资源简介
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
相关资源
- android图片压缩工具类分享
- 顺丰丰桥接口开发详细教程源码含下
- 最新数据验证工具类java,身份证、手
- 敏感信息脱敏源码和jar包
- Rabbitmq工具类,java工具类RabbitmqUtil
- JavaWeb中文件上传最强工具类
- sm2-sm4国密算法工具包及工具类245790
- java httpclient https或http及文件中转上传
- java_poi导入excel通用工具类
- Android 通过WebService进行网络编程,使
- freemaker导出word的doc_docx_带动态图片及
- Java把html生成pdf (xhtmlrenderer)
- 分享一个Android和java调用RESTful Web服务
- aspose.words for java文档转换工具类
- Mybatis分页插件和逆向工程工具类
- android webdav工具类
- java 对象与json字符串互相转换工具类
- 工作5年精心整理_Java常用工具类源码
- SatRDA数据服务组件20161118
- Java常用工具类大全,工作5年精心整理
- 文件上传微服务后台
- 手机号归属地查询JAVA工具类
- Java RESTful Web Service实战.pdf
- 《Java Restful Web Service实战》第一版 高
- Java RESTful Web Service实战.part2
- 1-Java RESTful Web Service实战.part1.rar
- java实现扫一扫封装的工具类
- android高德地图封装工具类
- 使用 Java 实现的压缩/解压 ZIP 文件的
- LogUtil工具类
评论
共有 条评论