91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

Http請求Restful風(fēng)格的遠(yuǎn)程調(diào)用,在遠(yuǎn)程調(diào)用的過程中會出現(xiàn)四種請求方式,這個工具把此部分代碼給封裝了一下。

資源截圖

代碼片段和文件信息

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?{
????/**?全局默認(rèn)請求頭?*/
????private?static?final?Map?defaultHeaders?=?new?HashMap<>();
????/**?全局默認(rèn)請求頭?*/
????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(){?}

????/**
?????*?發(fā)起請求
?????*?@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);
????}

????/**
?????*?發(fā)起請求
?????*?@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

評論

共有 條評論