资源简介
Http请求Restful风格的远程调用,在远程调用的过程中会出现四种请求方式,这个工具把此部分代码给封装了一下。
代码片段和文件信息
package com.dmsdbj.library.app.util;
import com.fasterxml.jackson.databind.objectMapper;
import org.apache.commons.lang3.StringUtils;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* RestfulApi请求工具
* 使用说明
* @author lnk
*/
public class RestfulHttpClient {
/** 全局默认请求头 */
private static final Map defaultHeaders = new HashMap<>();
/** 全局默认请求头 */
private static List initializers;
private static final String charset = “UTF-8“;
private static final int readTimeout = 60000;
private static final int connectTimeout = 60000;
public static final String METHOD_GET = “GET“;
public static final String METHOD_POST = “POST“;
public static final String METHOD_PUT = “PUT“;
public static final String METHOD_PATCH = “PATCH“;
public static final String METHOD_DELETE = “DELETE“;
private RestfulHttpClient(){ }
/**
* 发起请求
* @param method 请求方式:GET、POST、PUT、PATCH、DELETE
* @param url 请求url
* @param body 请求体body
* @throws IOException
*/
public static HttpResponse request(String method String url object body) throws IOException {
return request(method url body defaultHeaders);
}
/**
* 发起请求
* @param method 请求方式:GET、POST、PUT、PATCH、DELETE
* @param url 请求url
* @param body 请求体body
* @param headers 请求头
* @throws IOException
*/
public static HttpResponse request(String method String url object body Map headers) throws IOException {
return getClient(url).method(method).body(body).headers(headers).request();
}
/**
* 获取请求客户端
* @param url
* @return
*/
public static HttpClient getClient(String url){
return new HttpClient(url);
}
/**
* 添加全局请求连接初始化器
* @param initializer
*/
public static void addInitializer(URLConnectionInitializer initializer){
if(initializer == null){
throw new NullPointerException(“不能添加空的连接初始化器“);
}
if(initializers == null){
initializers = new ArrayList<>();
}
initializers.add(initializer);
}
/**
* 请求客户端
*/
public static class HttpClient{
private Map headers;
private int readTimeout = RestfulHttpClient.readTimeout;
private int connectTimeout = RestfulHttpClient.connectTimeout;
private String method = METHOD_GET;
private String url;
private Map pathParams;
private Map queryParams;
private Map postParams;
priv
相关资源
- HttpUtil工具类支持POSTGETHTTPHTTPS
- 音乐播放工具类
- FastBulr模糊化处理工具类
- java后台微信支付工具类
- java实现复制、粘贴、剪切、删除文件
- Java解析bt torrent种子文件的工具类代码
- excel导出可带图片
- commons-lang3-3.1 StringUtils字符串jar包
- java反射工具类 ReflectionUtils
- 解析wkt数据
- Gson工具类 JsonUtil
- Android 指纹识别工具类
- 解析excel工具类
- Android远程调用sql server实现增删查改
- RSAUtil工具类
- java操作mongodb的工具类
- 股票K线指标算法整理Java封装工具类,
- java常用工具类-Verify
- Java 串口rxtxdemo包含发送、接收、以及
- java开发,30个常用工具类总结,全部
- 自己写的支付宝集成工具类,直接调
- zipentry工具类
- httpclient get/post请求工具类map参数封装
- Android资源评论工具类
- gson.jar包
- 基于HttpClient 4.3的可访问自签名HTTPS站
- jettison-1.3.3.jar
- java阿里云直播推流播流地址生成工具
- Java poi导入导出EXCEL工具类兼容各版本
- Java工具类ZIP解压缩
评论
共有 条评论