java 模拟发送post请求测试

方法一: HttpClient

1public void postTest(HttpServletRequest request,Integer type,String phone,String passwd,String schoolld,String agent){ 2 String url = "xxxxxxxxx";//发送请求的URL地址 3 JSONObject jsonObject = new JSONObject();//封装参数 4 jsonObject.put("phone", "xxxx"); 5 jsonObject.put("agent", "xxxx"); 6 String params=jsonObject.toString(); 7 sendPostHttpClient(url, params); 8} 9 10 11public String sendPostHttpClient(String url, String data) { 12 String response = null; 13 try { 14 CloseableHttpClient httpclient = null; 15 CloseableHttpResponse httpresponse = null; 16 try { 17 httpclient = HttpClients.createDefault(); 18 HttpPost httppost = new HttpPost(url); 19 //StringEntity stringentity = new StringEntity(data, ContentType.create("text/json", "UTF-8"));参数传递文本格式 20 StringEntity stringentity = new StringEntity(data, ContentType.create("application/json", "UTF-8"));//参数传递json格式 21 httppost.setEntity(stringentity); 22 httpresponse = httpclient.execute(httppost); 23 response = EntityUtils.toString(httpresponse.getEntity()); 24 logger.info("response: " + response); 25 } finally { 26 if (httpclient != null) { 27 httpclient.close(); 28 } 29 if (httpresponse != null) { 30 httpresponse.close(); 31 } 32 } 33 } catch (Exception e) { 34 e.printStackTrace(); 35 } 36 return response; 37}

方法二:RestTemplate

1public Map<String,String> getShangHaiCarDealCount(String formatTime) { 2 Map<String,String> map=new HashMap<>(); 3 map.put("flag", "fail"); 4 String cycle = "1"; 5 String pic_type = "3"; 6 String qsrq = formatTime; 7 String Submit = "显示"; 8 String zzrq = formatTime; 9 10 String result = null; 11 try { 12 String url = "http://xxxxxxxxxxxxxxxxxxxxxx"; 13 RestTemplate client = new RestTemplate(); 14 HttpHeaders headers = new HttpHeaders(); 15 // 请勿轻易改变此提交方式,大部分的情况下,提交方式都是表单提交 16 headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); 17 // 封装参数,千万不要替换为Map与HashMap,否则参数无法传递 18 MultiValueMap<String, String> params= new LinkedMultiValueMap<String, String>(); 19 // 也支持中文 20 params.add("cycle", cycle); 21 params.add("pic_type", pic_type); 22 params.add("qsrq", qsrq); 23 params.add("Submit", Submit); 24 params.add("zzrq", zzrq); 25 HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<MultiValueMap<String, String>>(params, headers); 26 // 执行HTTP请求 27 ResponseEntity<String> response = client.exchange(url, HttpMethod.POST, requestEntity, String.class); 28 result = response.getBody(); 29 map.put("result", result); 30 map.put("flag", "success"); 31 } catch (Exception e) { 32 e.printStackTrace(); 33 } 34 return map; 35 }
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )