大家好。
我现在刚刚学会如何从client向sever用idhttp来发送XML文件。
请问各位老师,如何在sever上接收发送的post呢?用idhttpsever?
还有就是如何从sever上发送XML到client,而client端怎么接收呢?最好能有个简单的例子。谢谢了~~~

解决方案 »

  1.   

    我前段时间也刚刚写一个这样的例子,用的是indy10,服务端在idhttpserver的CommandGet事件里处理.ARequestInfo.UnparsedParams就是客户端提交过来的XML内容,向客户端返回东西这样:AResponseInfo.ContentText:='返回内容';不过我客户端不是用idhttp,而直接用AJAX的一样的方法,用Msxml2.XMLHTTP这个ole对象.下面是客户端的提交的例子:
    uses ComObj;var
      url:string;
      xmlHttp:Olevariant;
      responseText:Widestring;
    begin
      url:='http://localhost:8088/';
      try
        xmlHttp:=CreateOleObject('Msxml2.XMLHTTP');//Msxml2.XMLHTTP.5.0
        xmlHttp.open('POST',url,false);
        xmlHttp.setRequestHeader('Content-Length', 20);
        //xmlHttp.setRequestHeader('CONTENT-TYPE','application/x-www-form-urlencoded');    xmlHttp.setRequestHeader('Content-Type','text/xml');
        xmlHttp.setRequestHeader('Content-Type','gb2312');    xmlHttp.send('这里是提交内容:111111----111111asdfkladsfasndf,mansdfasn'
          +'fasflkjaskdfjasdlfjalsdflasf-----------------XXX');
        responseText:=xmlHttp.responseText;//返回的结果
        if xmlHttp.status='200' then
        begin
          self.mmo1.Text:=responseText;
        end
        else
        begin
          //--
        end;
      except
        On E:Exception do
          showmessage(E.Message);
      end;
    end;