关于HTTP POST的说明如下下面是一个 HTTP POST 请求和响应示例。所显示的占位符需要由实际值替换。POST /WebTest/Service1.asmx/IntTest HTTP/1.1
Host: localhost
Content-Type: application/x-www-form-urlencoded
Content-Length: lengtha=string&b=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length<?xml version="1.0" encoding="utf-8"?>
<int xmlns="http://tempuri.org/">int</int>那么,我该如何才能调用这个HTTP POST,以及如何才能获得返回的结果呢?
这个东东是C#架的一个WEB SERVICE,其中的一个函数初次接触这种东东,还请赐教。

解决方案 »

  1.   

    用idHttp就可以实现
    在indy组件里
      

  2.   

    这样尝试了一下,但是不可以,一个稀奇古怪的乱码的错误,调用IDHTTP的什么方法呢var
      Str:TStrings;
    begin
      Str := TStringList.Create;
      Str.Clear;
      Str.Add('op=IntTest');
      Str.Add('a=5 ');
      Str.Add('b=10 ');
      self.IdHTTP1.Post('http://localhost/WebTest/Service1.asmx'
        ,Str);
      Edit1.Text := idHttp1.ResponseText;
      

  3.   

    var
     response : string;
     data: TIdMultiPartFormDataStream;
    begin
     data := TIdMultiPartFormDataStream.Create;
     data.AddFormField('Login', Edit1.text);
     data.AddFormField('Password', MaskEdit1.text);
     data.AddFormField('Room', ComboBox1.Text);
     data.AddFormField('Enter', 'ENTER');
     response:=IdHTTP1.Post(URL.Text, data);
     data.Free;
    end;
      

  4.   

    楼上的老大,还是不行,报错:
    HTTP/1.1 500 鍐呴儴鏈嶅姟鍣ㄩ敊璇€有哪位老大知道怎么弄吗
      

  5.   

    1.IdHttp
    2.WebBrowser
    3.InternetAPI
      

  6.   

    这个错误是你的indy的版本低,下载安装9.0.18的就没有问题。
      

  7.   

    放一个浏览器控件,它的几个函数都要返回一个请求的头部,就是你的那些东东
    INDYHTTP也可以,如果用SOCKET,应该也是可以的,但就是写的方法我不知道不。