-
httpclient 通过流形式上传文件?5
页面上上传附件 action里面已经拿到MultipartFile文件对象了,但是该怎么通过httpclient传递给远程服务器啊,还有就是 有2个图片流 服务器怎么区分呢? 求大神指点!2012年6月18日 17:04
1个答案 按时间排序 按投票排序
-
采纳的答案
如果远程服务器提供接受文件的服务:
//========MultipartEntity HttpPost post3 = new HttpPost("http://remotehost/post.do"); File upfile = new File("C:\\test.jpg"); MultipartEntity entity3 = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE, null, Charset.forName("UTF-8")); entity3.addPart("file_name", new StringBody(upfile.getName())); entity3.addPart("file_contents", new FileBody(upfile)); post3.setEntity(entity3); new DefaultHttpClient().execute(post3);
2012年6月20日 15:39
相关推荐
HttpClient Post提交多文件及多个普通参数,已经封装成工具类。 需传入 要请求的url 普通参数map 例 map.put("param1","张三"); 需要传入的文件流map 其中key为文件名 服务端接收无乱码。
在Java开发中,HttpClient是一个非常重要的工具库,用于执行HTTP请求。它提供了丰富的API来实现各种复杂的HTTP操作,包括文件上传。...通过理解这些概念,你可以更有效地利用HttpClient实现文件上传功能。
在文件上传的过程中,我们通常会使用POST或PUT方法,因为它们允许携带实体数据,而文件正是这种实体数据的一种形式。下面我们将详细介绍如何使用HttpClient进行文件上传: 1. **配置HttpClient**: 首先,我们需要...
2. **客户端调用**:在WinForm应用中,通过HttpClient或WebClient对象调用Web服务,获取文件流。例如: ```csharp WebClient client = new WebClient(); byte[] fileBytes = client.DownloadData(serviceUrl); `...
2. **创建MultipartFormDataContent**:文件上传通常使用多部分形式的数据内容,因此需要创建一个`MultipartFormDataContent`对象,用于封装文件和其他可能的表单数据。 ```csharp MultipartFormDataContent ...
`httpclient.jar`文件是HttpClient库的二进制形式,包含所有必要的类和资源,可以直接引入到Java项目中使用,无需构建过程。将这个JAR添加到项目的类路径后,就可以开始编写HTTP客户端代码了。 实战示例: ```java...
使用c#实现的HttpClient拼接multipart/form-data形式参数post提交数据,包含图片内容,有需要的可以下载,希望能帮到有需要的人,
- **文件上传下载**:通过POST或PUT请求,HttpClient 可以实现文件的上传,通过GET请求实现文件的下载。 - **模拟登录**:HttpClient 支持多种身份验证机制,可以用来模拟用户登录网站。 5. **最佳实践** - **...
为了实现“不受大小限制”的文件上传,我们需要确保服务器端的配置允许接收大文件,并在客户端代码中处理大文件流。这可能涉及分块上传或使用流处理技术,以避免一次性加载整个文件到内存中。 在上传过程中显示进度...
### C# WebClient 上传文件知识点解析 ...最后,虽然`WebClient`类提供了一个简单易用的接口,但在某些场景下,可能需要更复杂的控制和配置,这时可以考虑使用`HttpClient`等更现代的API来进行文件上传。
"commons-httpclient.zip" 文件很可能是 Apache Commons HttpClient 库的源代码或二进制包的压缩形式。 Apache Commons HttpClient 提供了丰富的功能,包括但不限于: 1. **HTTP 协议支持**:HttpClient 支持 ...
HttpMime 4.2.5提供了`MultipartEntity`和`MultiPartFormDatEntity`类,用于构建多部分/形式数据的HTTP实体,这些在进行Web服务调用或文件上传时非常有用。 将这三个库结合使用,开发者可以构建出强大且灵活的HTTP...
在Java开发环境中,JAR(Java Archive)文件是Java类库的打包形式,包含了多个类和资源文件。为了使用HTTPClient-4.5,你需要将这些jar包添加到你的项目类路径(ClassPath)中,这样编译器和运行时环境才能找到并...
在文件上传场景中,HttpClient允许我们以编程方式模拟用户通过表单提交文件的行为。POST方法是HTTP协议中用于向服务器发送数据的一种方式,特别适合于文件上传。 首先,我们需要在项目中引入Apache HttpClient和...
3. `httpmime.jar`:这个库支持MIME类型的数据发送,比如表单提交或上传文件。 4. `commons-logging.jar`:HttpClient使用了 Commons Logging API 进行日志记录,这个库是必需的。 5. `commons-codec.jar`:编码和...
- 使用`MultipartEntityBuilder`创建多部分表单数据,适用于上传文件。 8. **性能优化**: - 使用连接池来减少建立新连接的时间。 - 预认证(Preemptive Auth)可以在请求之前发送认证信息,减少延迟。 9. **...
文件上传需要将文件内容写入到输出流中。我们创建一个BufferedOutputStream,然后按照多部分/形式数据的格式写入每个字段,包括普通参数和文件。 ```java String boundary = "----WebKitFormBoundary7MA4YWxkTrZu0...
在实际开发中,Apache HttpClient 4.3.x 版本被广泛应用于各种场景,如Web服务调用、数据抓取、文件上传下载等。它的灵活性和可配置性使其成为Java开发者的首选HTTP客户端库之一。通过这两个jar文件,开发者可以构建...
文件`httpclient_class`很可能是CHttpClient类的源代码,包含了实现上述功能的详细逻辑。分析这个源代码可以帮助我们更好地理解如何在C++中实现HTTP文件上传和下载的封装,也可以作为学习和扩展网络编程知识的一个...
例如,使用`HttpClient`进行文件上传时,可以将文件内容读取为字节流,然后通过`MultipartFormDataContent`发送到目标URL。 总结: 在ASP.NET中,文件上传和下载涉及到多个方面,包括配置文件的调整、文件信息的...