- 浏览: 38105 次
文章分类
最新评论
HttpClient(发送字符串,multipart, 参数等)
- 博客分类:
- java
备注:httpclient4.5 发送MultiPart/Param/String
import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpEntityEnclosingRequestBase; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.client.methods.HttpPut; import org.apache.http.entity.ByteArrayEntity; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.impl.nio.client.CloseableHttpAsyncClient; import org.apache.http.impl.nio.client.HttpAsyncClients; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URI; import java.util.List; import java.util.Map; import java.util.concurrent.Future; /** * Http 工具类 * */ public class HttpHelper { /** *发送HttpPost方法 * * @param requestUrl * @param requestHeaderMap * @param requestBody * @return * @throws IOException */ public static HttpResponse httpPost(String requestUrl, Map<String, String> requestHeaderMap, String requestBody) throws IOException { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost httpPost = new HttpPost(requestUrl); if (requestHeaderMap != null) { for (String key : requestHeaderMap.keySet()) { httpPost.setHeader(key, requestHeaderMap.get(key)); } } if (requestBody != null && requestBody.length() > 0) { byte[] content = requestBody.getBytes("utf-8"); ByteArrayEntity entity = new ByteArrayEntity(content); httpPost.setEntity(entity); } return httpClient.execute(httpPost); } /** *异步发送HttpPost方法 * * @param requestUrl * @param requestHeaderMap * @param requestBody * @return * @throws IOException */ public static HttpResponse httpPostAsyn(String requestUrl, Map<String, String> requestHeaderMap, String requestBody) throws IOException { CloseableHttpAsyncClient httpAsyncClient = HttpAsyncClients.createDefault(); HttpPost httpPost = new HttpPost(requestUrl); if (requestHeaderMap != null) { for (String key : requestHeaderMap.keySet()) { httpPost.setHeader(key, requestHeaderMap.get(key)); } } if (requestBody != null && requestBody.length() > 0) { byte[] content = requestBody.getBytes("utf-8"); ByteArrayEntity entity = new ByteArrayEntity(content); httpPost.setEntity(entity); } HttpResponse response = null; try { httpAsyncClient.start(); Future<HttpResponse> future = httpAsyncClient.execute(httpPost, null); response = future.get();// 获取结果 } catch (Exception e) { e.printStackTrace(); } return response; } /** *发送 httpPostMultiPartAsyn方法 * * @return * @throws IOException */ public static HttpResponse httpPostMultiPartAsyn(final String url, final Map<String, String> headerMap, final HttpEntity httpEntity) { new Thread(){ @Override public void run() { httpPostMultiPart(url, headerMap, httpEntity); } }.start(); return null; } /** *发送httpPostMultiPart方法 * * @return * @throws IOException */ public static HttpResponse httpPostMultiPart(String url, Map<String, String> headerMap, HttpEntity httpEntity) { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost httpPost = new HttpPost(url); HttpResponse response = null; if (headerMap != null) { for (String key : headerMap.keySet()) { httpPost.setHeader(key, headerMap.get(key)); } } httpPost.setEntity(httpEntity); try { httpClient.execute(httpPost); } catch (IOException e) { e.printStackTrace(); } return response; } /** *发送httpPostParam * * @return * @throws IOException */ public static HttpResponse httpPostParam(String url, Map<String, String> headerMap, List<NameValuePair> nvps) { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost httpPost = new HttpPost(url); HttpResponse response = null; if (headerMap != null) { for (String key : headerMap.keySet()) { httpPost.setHeader(key, headerMap.get(key)); } } try { httpPost.setEntity(new UrlEncodedFormEntity(nvps)); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } try { httpClient.execute(httpPost); } catch (IOException e) { e.printStackTrace(); } return response; } /** * 发送HttpPut方法 * * * @param requestUrl * @param requestHeaderMap * @param requestBody * @return * @throws IOException */ public static HttpResponse httpPut(String requestUrl, Map<String, String> requestHeaderMap, String requestBody) throws IOException { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPut httpPut = new HttpPut(requestUrl); if (requestHeaderMap != null) { for (String key : requestHeaderMap.keySet()) { httpPut.setHeader(key, requestHeaderMap.get(key)); } } if (requestBody != null && requestBody.length() > 0) { byte[] content = requestBody.getBytes("utf-8"); ByteArrayEntity entity = new ByteArrayEntity(content); httpPut.setEntity(entity); } return httpClient.execute(httpPut); } /** * 发送HttpGet方法 * * @param requestUrl * @param requestHeaderMap * @return * @throws IOException */ public static HttpResponse httpGet(String requestUrl, Map<String, String> requestHeaderMap) throws IOException { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpGet httpGet = new HttpGet(requestUrl); if (requestHeaderMap != null) { for (String key : requestHeaderMap.keySet()) { httpGet.setHeader(key, requestHeaderMap.get(key)); } } return httpClient.execute(httpGet); } /** * 发送HttpDelete方法 * * @param requestUrl * @param requestHeaderMap * @return * @throws IOException */ public static HttpResponse httpDelete(String requestUrl, Map<String, String> requestHeaderMap, String requestBody) throws IOException { CloseableHttpClient httpClient = HttpClients.createDefault(); ImHttpDelete imHttpDelete = new ImHttpDelete(requestUrl); if (requestHeaderMap != null) { for (String key : requestHeaderMap.keySet()) { imHttpDelete.setHeader(key, requestHeaderMap.get(key)); } } if (requestBody != null && requestBody.length() > 0) { byte[] content = requestBody.getBytes("utf-8"); ByteArrayEntity entity = new ByteArrayEntity(content); imHttpDelete.setEntity(entity); } return httpClient.execute(imHttpDelete); } static class ImHttpDelete extends HttpEntityEnclosingRequestBase { public final static String METHOD_NAME = "DELETE"; public ImHttpDelete() { super(); } public ImHttpDelete(final URI uri) { super(); setURI(uri); } /** * @throws IllegalArgumentException if the uri is invalid. */ public ImHttpDelete(final String uri) { super(); setURI(URI.create(uri)); } @Override public String getMethod() { return METHOD_NAME; } } }
发表评论
-
JVM内存结构及分析
2017-07-16 19:38 522JVM内存模型 名称特征 ... -
JVM调优实例
2017-06-24 12:30 01.背景:由于最近上线新增业务模块,业务量要增加所以对上线服务 ... -
音视频编码转换-ffmpeg
2016-12-30 18:42 15341.前言 由于最近在做ios与android端需要做a ... -
git did not match any file(s) known to git
2016-04-23 23:49 29481.did not match any file(s) kno ... -
Static工具类线程安全问题
2016-01-08 11:39 22921.静态方法 无论是静态方法还是实例方法,在内存中都只 ... -
JavaThread-ThreadLocal笔记
2015-12-23 14:54 5011.ThreadLocal简介 早在JDK 1.2的版本中就提 ... -
JUC-CountDownLatch笔记
2015-12-23 10:53 5281.CountDownLatch简介 CountDownLat ... -
Lambda表达式实现设计模式:命令模式
2015-10-13 09:59 665如何在使用Java 8 Lambda表达式的函数式编程方式时实 ... -
mysql 错误汇总
2015-08-12 16:49 4081.Mysql ERROR 1045 (28000): Acc ... -
Java注解
2015-08-07 11:25 01.@Retention(RetentionPolicy.RU ... -
Base64 编解码 工具类
2015-07-28 22:48 42421.工具类: import java.io.Uns ... -
转载-搜索引擎实时秒级更新
2015-07-08 14:02 829搜索是很多用户在天 ... -
tomcat-定时任务
2015-03-30 15:27 6061.监听类 import java.util.Timer ... -
JVM-工作原理
2015-03-16 23:26 610一、 JVM的生命周期 1. J ... -
tomcat-启动时启动额外线程并控制线程状态
2015-02-04 18:22 632通过启动线程可以进行后台的操作 1.创建servlet ... -
Exception in thread "main" SoapFault - faultcode: 'soapenv:Server.userException'
2015-01-20 22:32 13471.抛出此类错误大部分都是服务端发布webservice调用出 ... -
Tomcat映射虚拟目录
2015-01-19 22:43 01.设置虚拟目录 <Host>标签</H ... -
android-运行java main方法
2014-12-30 16:10 6761.右键入口类(含有Main方法的)Run Configura ... -
Mybatis 常见错误汇总
2014-12-28 22:31 01.插入数据到数据库是异常 ### Cause: java.s ... -
jsoup
2014-12-17 00:25 01. package com.wuhao.itinfo ...
相关推荐
主要介绍了java 中HttpClient传输xml字符串实例详解的相关资料,需要的朋友可以参考下
使用c#实现的HttpClient拼接multipart/form-data形式参数post提交数据,包含图片内容,有需要的可以下载,希望能帮到有需要的人,
HttpClient发送json、普通参数类型的Post请求(csdn)————程序
java HttpClient 发送GET请求和带有表单参数的POST请求教程例子
import org.apache.commons.httpclient.methods.multipart.FilePart; import org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity; import org.apache.commons.httpclient.methods.multipart....
try(CloseableHttpClient httpClient = HttpClients.createDefault()) { HttpPost httpPost = new HttpPost(url); StringEntity stringEntity = new StringEntity(params, Charset.forName("UTF-8")); ...
其中包含项目post-demo定义接口;包含另一个项目httpclient-demo使用工具类发送post请求调用接口。详细内容查看博客 httpclient发送post请求
利用HttpClient发送HTTP请求 利用HttpClient发送HTTP请求
采用httpclient发送xml报文,httpServer接收报文。两个程序一看就明白可以直接调用执行不在多说。
利用-中国网建平台-发送短息验证码,或者短信信息,大多数用户android,ios应用手机注册时发送短信验证码,利用httpclient发送,其他短信平台用法大同小异.详细介绍可以观看各个短信平台的开发文档,写得都很详细!
NULL 博文链接:https://javasam.iteye.com/blog/2117845
一个简单的易学的 基于HttpClient 4.3发送psot及get请求,返回数据,适合初学者,适合初学者
HttpClient发送http请求(post+get)需要的jar包+内符java代码案例+注解详解(这款工具类是我精心挑选适合广大java程序猿使用)
httpclient的用法,发送get请求和post请求,设置header
不会的可以在评论区留言哈,这是我自己做项目用到的。所以绝对可用!同时共享出来给到大家
解决证书错误,利用httpClient发送https请求,内容格式为XML,另外包中有sha1加密,需要的包,速速下载
HttpClient发送http请求(post+get)需要的jar包+内符java代码案例+注解详解
使用HttpClient发送POST请求,并解析响应,发送参数可以是普通参数或JSON格式参数。