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)

相关推荐

  • 宋仁宗为什么无子,宋仁宗为什么一生没有儿子

    技术宋仁宗为什么无子,宋仁宗为什么一生没有儿子据史料记载,宋仁宗本来生育了有三个儿子,十五个女儿宋仁宗为什么无子。但是这十八个孩子只有四个女儿长大成人,其他都在出生后不久就死了,包括三个皇子。宋仁宗赵祯(1010年5月1

    生活 2021年10月19日
  • 免费刷粉网站推广,抖音怎么增加粉丝量?

    技术免费刷粉网站推广,抖音怎么增加粉丝量?免费刷粉网站推广,抖音怎么增加粉丝量?抖音视频一直都是很受大家欢迎的一个社交软件,不仅仅是刷抖音看作品,也有很多人在抖音上拍摄作品分享。分享抖音作品就得有点赞双击量,这样才能有人

    测评 2021年11月11日
  • ubuntu 12.04如何编译sqlite

    技术ubuntu 12.04如何编译sqlite这篇文章将为大家详细讲解有关ubuntu 12.04如何编译sqlite,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。#########

    攻略 2021年11月18日
  • qt地图综合拉伸方法(qt实现占据栅格地图)

    技术如何实现Qt地图自适应拉伸小编给大家分享一下如何实现Qt地图自适应拉伸,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、前言用过echart的人都会遇到一个问题,就算是代码中写了window.onr

    攻略 2021年12月20日
  • Synchronized升级过程是怎样的

    技术Synchronized升级过程是怎样的Synchronized升级过程是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。要理解Synchron

    攻略 2021年10月20日
  • presto如何安装启动

    技术presto如何安装启动这篇文章主要介绍了presto如何安装启动,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。presto 关键字catalogs

    攻略 2021年11月25日