我的目标是通过HTTP帖子上传文本文件我正在使用Delphi 2009。
比如说以下网址
https://www.example.com/ex/exampleAPI.asmx/Process
我知道可以使用TIdHttp组件来完成。以下电话
IdHttp1.Post();
但我无法弄清楚如何设置所有内容,即指定网址并包含要发布的文件。
感谢。
答案 0 :(得分:8)
TIdHTTP
有两个重载版本的Post()
,它们将文件名作为输入:
var
Response: String;
Response := IdHTTP1.Post('https://www.example.com/ex/exampleAPI.asmx/Process', 'c:\filename.txt');
var
Response: TStream;
Response := TMemoryStream.Create;
IdHTTP1.Post('https://www.example.com/ex/exampleAPI.asmx/Process', 'c:\filename.txt', Response);
...
Response.Free;
请注意,您要发布到HTTPS
网址,因此您需要事先为TIdSSLIOHandlerSocketOpenSSL
媒体资源分配启用SSL的IOHandler,例如TIdHTTP.IOHandler
。