2,495
社区成员
发帖
与我相关
我的任务
分享
procedure TForm1.btn9Click(Sender: TObject);
begin
postXml('测试成功','http://192.168.8.1:1000/calldata?key=FFDDSSSSSSSS)
end;
function TForm1.postXml(const xmlstr, url: WideString): WideString;
var
idHttp:TIdHTTP;
sends:tstrings;
IdEncoderMIME1:TIdEncoderMIME;
s,ss:string;
begin
result:='';
try
idHttp:= TIdHTTP.Create(nil);
idhttp.AllowCookies:=false;
idhttp.HandleRedirects := true;
idhttp.Request.UserAgent:='Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)';
idhttp.Request.ContentType:='application/x-www-form-urlencoded; Charset=UTF-8';
idhttp.Request.Connection:='Keep-Alive';
idhttp.Request.Accept:='*/*';
idhttp.Request.ContentEncoding :='UTF-8' ;
idhttp.Request.AcceptCharSet := 'UTF-8';
idhttp.Request.AcceptEncoding := 'UTF-8';
sends:=tstringlist.Create;
ss := AnsiToUtf8('<?xml version="1.0" encoding="utf-8"?>') ;
//ss := ('<?xml version="1.0" encoding="utf-8"?>') ;
sends.Add(SS);
ss := AnsiToUtf8('<Order><bodys><body dataId="111"></body></bodys></Order>') ;
//ss := ('<Order><bodys><body dataId="111"></body></bodys></Order>') ;
sends.Add(SS);
sends.text;
//发送前输出的内容:sends.text;
//'<?xml version="1.0" encoding="utf-8"?>'#$D#$A'<Order><bodys><body dataId="111"></body></bodys></Order>'#$D#$A
result:=idhttp.Post(url,sends);
sends.text;
//发送后输出的内容sends.text (服务器端收到的内容):带有此%3E%3C格式的编码 如何处理
//<?xml version="1.0"%20encoding="utf-8"?%3E'#$D#$A'<Order><bodys><body dataId="111"/%3E%3C/bodys%3E%3C/Order%3E'#$D#$A
except
on E:Exception do
begin
result:=e.Message;
end;
end;
idHttp.Free;
sends.Free;
end;