2

我想使用 Apache HttpClient 将文件的内容作为 http 请求的一部分发送,但我不知道如何在请求正文中传递文件内容。

4

2 回答 2

3

你没有指定格式....

最有可能的是,您想发送一个 POST 请求,内容将是multipart/form-data MIME 类型。这模拟了浏览器从 <INPUT type="file" ...> 表单元素发送的内容。这需要在服务器端进行一些非常复杂的解析,以从正文中提取多个部分,并从其他字段(如果有)中正确提取文件数据。幸运的是,commons-fileupload完美地做到了这一点。关于FilePart的第一个答案是完全正确的。

或者,您可以使用InputStreamRequestEntity简单地将文件的原始内容发布为请求的主体。如果您正在编写自己的服务器端来接收数据,这可能会简单得多。服务器端就像将请求的 InputStream 流式传输到磁盘一样简单。我使用这种技术通过 Google Gears 进行上传。

于 2009-01-16T04:50:53.833 回答
1

查看FilePart和相关的。

这是示例

于 2009-01-15T17:58:14.167 回答