本帖最后由 delsea 于 2012-03-29 19:03:11 编辑

解决方案 »

  1.   


    var
    sPost:TStringStream;
    begin
      sPost:=TStringStream.Create('');
      try
        sPost.WriteString('user='+HTTPEncode(Utf8EnCode('郭建飞')));
        try
          IdHTTP1.Post('http://www.123.com',sPost);
        except
        end;
      finally
        sPost.Free;
      end;
    end;需要HTTPApp单元
      

  2.   

    #1楼这样可以么?刚试了下,貌似出错。好久没用了,我一般习惯了用stringlist了。 str := TStringList.Create;Response:=TStringStream.Create('');
    str:=TStringStream.Create('');
    str.Clear;
    str.add('sex=man');
    str.add('city=shanghai');
    ....
    str.add('user='+Edit9.Text);try
    IdHTTP1.Post('http://www.XXX.com',str,Response);能在这基础上改么?
      

  3.   

    不清楚,我没用过TStringList。
    我一般都是用的TStringStream,又不复杂。
    我已经在多个项目中用过这种代码了,有的项目已经运行几年了,没有问题的。
    如果想加多个参数,如下:    sPost.WriteString('user='+'user='+HTTPEncode(Utf8EnCode('郭建飞'))+'&'+
                          'password='+'123456'+'&'+
                          'site='+'csdn'
                          );//1楼的代码我是测试过可行的。XPSP3+Delphi7+Indy9
      

  4.   

    先设置这个
      IdHTTP1.HTTPOptions := [];否则idhttp 会自动编码