介绍
这篇文章给大家介绍春天中的Http请求如何使用restTemplete实现,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
使用春天的restTemplete进行Http请求
/* *其他模板 */公开课RestTemplateTest {//私有静态字符串url=癶ttp://10.2.1.46:8080"; 私有静态字符串url=癶ttp://127.0.0.1:8080 test"; 私有静态字符串autoDeploy=?api/ddd/管理/多/1111“; 公共静态void main (String [] args)抛出UnsupportedEncodingException { JSONObject token1=LoginTest.login (url); JSONObject牌=new JSONObject (); token.put (“token" token1.getString (“token")); token.put (“userName",“chenchen.ming@56qq.com"); 字符串名称=懊鞒匠俊? token.put (“name" URLEncoder。编码(名称、“UTF-8")); 字符串jsonBody=DmsAutoDeployTest.dmsAutoDeployData (); autoDeploy (jsonBody token.toJSONString ()); }/* *主要的发布方法 */公共静态孔隙autoDeploy (json字符串,字符串标记){ 字符串autoDeployUrl=url + autoDeploy; 创建RestTemplate创建RestTemplate=new创建RestTemplate (); HttpHeaders header=new HttpHeaders ();//一定要设置好ContentType为utf8否则会乱码 MediaType类型=MediaType.parseMediaType (“application/json;charset=UTF-8"); headers.setContentType(类型); headers.add (“Accept" MediaType.APPLICATION_JSON.toString ()); headers.add (“Authentication",令牌);//设置自定义会话头 HttpEntityformEntity=new HttpEntity (json,头); Object> Map<字符串;,parameterMap=new HashMap<的在();//实体=头,uriVariables=参数; 创建restTemplate。postForObject (autoDeployUrl formEntity,字符串。类,parameterMap); }/* *测试 */公共静态孔隙test4 () { JSONObject响应=零; Object> Map<字符串;,参数=new HashMap<的在(); param.put (“ming",“chyen"); json字符串=癶aha"; 尝试{ 响应=RestUtil.post (“http://127.0.0.1:8080 cloud-master/api/发布/管理/detail", JSONObject.class,空,空,json); }捕捉(异常e) { e.printStackTrace (); } System.out.println(响应); }/* * *测试 */公共静态空白测试(){ 创建RestTemplate创建RestTemplate=new创建RestTemplate (); Object> Map<字符串;,parameterMap=new HashMap<的在(); restTemplate.getForObject (“url"、String.class parameterMap);//工厂。都会(uri, httpMethod) } }
Util
/* * *使用春天的创建restTemplate进行http请求 * @author Mingchenchen * */公开课RestUtil { 私有静态创建RestTemplate创建RestTemplate=new创建RestTemplate ();/* * *让方法 * * @param url:地址 * @param returnClassName:返回对象类型,如:String.class * @param参数:参数参数 * @return */公共静态& lt; T>T get(字符串url, ClassObject> returnClassName Map<字符串;参数){ 如果(参数==null) { 返回创建restTemplate。getForObject (url, returnClassName); } 返回创建restTemplate。getForObject (url、returnClassName参数); }/* * *职位请求,包含了路径,返回类型,头,参数 * * @param url:地址 * @param returnClassName:返回对象类型,如:String.class * @param inputHeader * @param inputParameter * @param jsonBody * @return */公共静态& lt; T>T post(字符串url, Class Object> returnClassName Map<字符串;Object> inputHeader Map<字符串;inputParameter字符串jsonBody) {//请求消息头 HttpHeaders HttpHeaders=new HttpHeaders ();//拼接头 如果(inputHeader !=null) { Set 键=inputHeader.keySet (); (Iterator i=keys.iterator ();i.hasNext ();) { 字符串键=(字符串)i.next (); httpHeaders。add(键,inputHeader.get(关键).toString ()); } }//设置请求的类型及编码 MediaType类型=MediaType.parseMediaType (“application/json;charset=UTF-8"); httpHeaders.setContentType(类型); httpHeaders.add (“Accept",“应用程序/json"); List ,acceptableMediaTypes=new ArrayList<的在(); acceptableMediaTypes.add (MediaType.ALL); httpHeaders.setAccept (acceptableMediaTypes); HttpEntity formEntity=new HttpEntity (jsonBody httpHeaders); 如果(inputParameter==null) { 返回创建restTemplate。postForObject (url、formEntity returnClassName); } 返回创建restTemplate。postForObject (url、formEntity returnClassName inputParameter); } } 春天中的Http请求如何使用restTemplete实现