要发送XML文档到 http://192.168.1.1/config/test.xml
怎么通过IDHTTP来实现
请给例子!!  谢谢!!!!

解决方案 »

  1.   

    问题是你的服务端要支持的,服务端接收文件放到某一目录下。以下是我实现的方法,还在使用。delphi  注意:idhttp的版本要9.0.18的,低版本服务端接收有问题。
    uses IdMultipartFormData, IdGlobal;
    //FileName是本地文件路径,函数返回值是服务器端的Response.Write 内容。
    function UpLoagFile(FileName: String;http: TIdhttp): string;
    var
      obj : TIdMultiPartFormDataStream;
      Url: String;
    begin
      obj := TIdMultiPartFormDataStream.Create;
      try
        obj.AddFile('Image',FileName, GetMIMETypeFromFile(FileName));
        http.Request.ContentType := obj.RequestContentType;
        obj.Position := 0;
        Url := 'http://192.168.1.1/config/insertImage.aspx'; 此页面负责接收上传文件
        try
          Result := http.Post(Url, obj);
        except
          on E: Exception do
          begin
            Application.MessageBox(PChar('上传文件失败,错误原因:' + E.Message), ('错误'), MB_OK + MB_ICONERROR);
            Result := '';
          end;
        end;
      finally
        obj.Free;
      end;
    end;//insertImage.aspx页面,接受保存上传文件C#.net实现
    private void Page_Load(object sender, System.EventArgs e)
    {
    foreach(string f in Request.Files.AllKeys)

    string fullName;
    HttpPostedFile postFile = Request.Files[f]; 
    if (postFile.ContentLength > 10)

    fileName = postFile.FileName;
    //GetFileName( fileName, out fullName );
    //fullName = filePath + fullName;   此两句是获得保存本地的文件路径,包括文件名
    postFile.SaveAs ( Server.MapPath ( fullName ) );
    Response.Write (fullName.Trim());  客户端返回的值。
    }
    }
    }
      

  2.   

    此方法什么文件都可以Post上去。