随笔 - 0, 文章 - 264, 评论 - 170, 引用 - 0
数据加载中……

HttpClient PostMethod提交自定义参数

用PostMethod 模拟http post请求,需要解决传递字符串,文件等需求。
httpclient对此,提供了对应实现,实现方法关键在:RequestEntity。
示例:
RequestEntity requestEntity = newStringRequestEntity(text);  
post.setRequestEntity(requestEntity); 
示例中,是传递一个普通字符型参数。
这个方法代替了以前直接设置Request body。

RequestEntity是一个接口,有很多实现:
ByteArrayRequestEntity, FileRequestEntity, InputStreamRequestEntity, MultipartRequestEntity, StringRequestEntity
基本上从名字上就可以直接看出功能,可以从字符串,流,文件,字节数组中产生request body。

还有更复杂的Multipart,就是夹杂文件和普通字段的提交。
示例如下:
Part[] parts = {new StringPart("source""695132533"), new StringPart("status", URLEncoder.encode(status, "utf-8")), filePart};
postMethod.setRequestEntity(
new MultipartRequestEntity(parts, postMethod.getParams()));

posted on 2011-01-19 13:45 小一败涂地 阅读(33101) 评论(6)  编辑  收藏 所属分类: 开源工具、插件相关

评论

# re: HttpClient PostMethod提交自定义参数  回复  更多评论   

谢谢。。。。对我帮助很大。。。。。
2012-11-30 10:07 | amlean

# re: HttpClient PostMethod提交自定义参数  回复  更多评论   

万分感谢楼主,利博亚洲www.biyingbocai.com
2013-02-25 14:17 | 士大夫

# re: HttpClient PostMethod提交自定义参数[未登录]  回复  更多评论   

很好,帮助很大,感谢
2014-06-10 16:05 | tian

# re: HttpClient PostMethod提交自定义参数[未登录]  回复  更多评论   

感谢
2014-08-13 21:08 | 啊啊

# re: HttpClient PostMethod提交自定义参数  回复  更多评论   

顶顶顶
2015-01-24 16:07 | 暗示法

# re: HttpClient PostMethod提交自定义参数[未登录]  回复  更多评论   

InputStreamRequestEntity,我要把一个网络文件传到另一台服务器,不下载到本地的话怎么实现呢,例如:https://www.baidu.com/img/baidu_sylogo1.gif
用文件流上传到腾讯微信服务器
2016-07-29 16:37 | Kai

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问