http工具类 james

技术http工具类 james http工具类 jamespackage com.shsnc.south.znpact.server.util;import com.shsnc.south.znpact

超文本传送协议(超文本传输协议的缩写)工具类詹姆斯

包裹。com。shsnc。南方。znpact。服务器。util

进口。com。shsnc。南方。znpact。服务器。系统。常数。httpconstats

导入组织。阿帕奇。http。Httpentity

导入组织。阿帕奇。http。客户。Http客户端;

导入组织。阿帕奇。http。客户。方法。closeablehttpresponse

导入组织。阿帕奇。http。客户。方法。Http设置;

导入组织。阿帕奇。http。实体。严格性;

导入组织。阿帕奇。http。impl。客户。closeablehttpclient

导入组织。阿帕奇。http。impl。客户。HttpClientBuilder

导入组织。阿帕奇。http。乌提尔。entityutils

导入组织。slf4j。伐木工人;

导入组织。slf4j。伐木工人工厂;

导入组织。弹簧框架。靴子。配置处理器。JSON。jsonarray

导入组织。弹簧框架。靴子。配置处理器。JSON。jsone exception;

导入组织。弹簧框架。靴子。配置处理器。JSON。JSON对象;

导入Java。io。ioexception

导入Java。乌提尔。ArrayList

导入Java。乌提尔。HashMap

导入Java。乌提尔。列表;

导入Java。乌提尔。地图;

/**

* @作者黄骅

* @日期2020/3/9 17:18

*/

公共类HttpClientUtil {

私有静态最终记录器=记录器工厂。getlogger(httpclientutil。类);

/**

* 发送邮政请求

* @param url请求地址

* @param json请求参数

* @返回

*/

公共静态字符串网址引发JSONException {

//构建超文本传送协议(超文本传输协议的缩写)客户端

CloseableHttpClient Http client=HttpclientBuilder。创建().build();

//创建邮政请求

httpset httpset=new httpset(URL);

严格性实体=新的StringEntity(json,' UTF-8 ');

实体。setcontentencoding(' UTF-8 ');

实体。SetContentType(' application/JSON ');

httpset。setheader(' Content-Type ',' application/JSON;charset=utf8’);

//设置请求报文

httpPost.setEntity(实体);

//响应模型,构建响应模型

CloseableHttpResponse响应=null

//由客户端执行(发送)帖子请求

尝试{

响应=httpclient。执行(HttpSet);

//从响应模型中获取响应实体

HttpEntity响应实体=响应。getentity();

logger.info('url:{},响应代码:{} ',url,响应。GetStatusLine());

if (responseEntity!=null){ 0

字符串响应正文=entityutils。tostring(响应实体);

logger.info('url:{},响应体:{} ',url,响应体);

返回新的JSON对象(响应体);

}

} catch(IOexception e){ 0

e。print stack trace();

}最后{

尝试{

//释放资源

if (httpClient!=null){ 0

httpclient。close();

}

如果(回应!=null){ 0

回应。close();

}

} catch(IOexception e){ 0

e。print stack trace();

}

}

返回空

}

/**

* 根据传进来的地图参数转化成JSONObject的公共方法

* @param params

* @返回

*/

公共静态JSONObject createRequestJson(映射字符串,对象参数){ 0

JSON对象JSON对象=新的JSON对象(params);

返回jsonObj

}

公共静态void main(字符串[]参数)引发异常(

JSON对象obj=新的JSON对象();

obj.put('mockServerId ',' test-Baidu-7633 ');

JSONArray proxing rules=new JSONArray();

JSONObject规则=new JSON对象();

rule.put('serverPort ',1081);

rule.put('proxyRemotePort ',433);

rule.put('proxyRemoteHost ',' www。百度。com’);

rule.put('proxyRemoteScheme ',' HTTP ');

proxyingRules.put(规则);

物体。put(' proxingrules ',proxing rules);

字符串IP=' 192。168 .1 .43 ';

整数端口=27003;

字符串网址=字符串。格式(HttpconStats .MOCK_PROXY_START_URL,ip,端口);

logger.info('url:{},json: { } ',url,obj。tostring());

JSONObject res=sendPost(url,obj。ToString());

logger.info ('res3360),res .到弦()]

}

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/92783.html

(0)

相关推荐

  • DNSlog注入测试

    技术DNSlog注入测试 DNSlog注入测试之前提到的时间盲注,虽然用途比较广泛,但其查询耗时较长;且盲注都需要发送大量请求,容易被WAF拦截。
    此时,我们就要用到DNSlog注入——一个可以以较少的

    礼包 2021年11月1日
  • 怎么用Java实现Android地理信息系统经纬度与度分秒互转

    技术怎么用Java实现Android地理信息系统经纬度与度分秒互转本篇内容介绍了“怎么用Java实现Android地理信息系统经纬度与度分秒互转”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小

    攻略 2021年11月15日
  • 削木为使,神农炎帝他教会了人们哪些东西

    技术削木为使,神农炎帝他教会了人们哪些东西一、制耒耜,种五谷,奠定了农工基础削木为使。耒耜的使用和种五谷,解决了民以食为天的大事,促进了农业生产的发展,为人类由原始游牧生活向农耕文明转化创造了条件。二、尝百草,开医药先河

    生活 2021年10月22日
  • SequoiaDB 分布式事务实现原理是什么

    技术SequoiaDB 分布式事务实现原理是什么这篇文章将为大家详细讲解有关SequoiaDB 分布式事务实现原理是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1分

    攻略 2021年11月23日
  • SQL中索引怎么用

    技术SQL中索引怎么用小编给大家分享一下SQL中索引怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、概念 是数据库对象,通过指针

    攻略 2021年12月13日
  • shellmysql脚本使用教程(shell脚本mysql数据设置分隔符)

    技术如何实现mysql数据收集shell脚本小编给大家分享一下如何实现mysql数据收集shell脚本,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! #!/bin/shINTERVAL=5PREFIX=

    攻略 2021年12月20日