下边通过RestTemplate请求验证码服务获取验证码。
//向验证码服务发送请求,获取验证码
//http://localhost:56085/sailing/generate?effectiveTime=600&name=sms
@Test
public void getSmsCode(){
String url = "http://localhost:56085/sailing/generate?effectiveTime=600&name=sms";
//请求体
Map<String,Object> body = new HashMap<>();
body.put("mobile","133456");
//请求头
HttpHeaders httpHeaders =new HttpHeaders();
//指定Content-Type: application/json
httpHeaders.setContentType(MediaType.APPLICATION_JSON);
//请求信息,传入body,header
HttpEntity httpEntity = new HttpEntity(body,httpHeaders);
//向url请求
ResponseEntity<Map> exchange = restTemplate.exchange(url, HttpMethod.POST, httpEntity, Map.class);
log.info("请求验证码服务,得到响应:{}", JSON.toJSONString(exchange));
Map bodyMap = exchange.getBody();
System.out.println(bodyMap);
Map result = (Map) bodyMap.get("result");
String key = (String) result.get("key");
System.out.println(key);
}