Get
带参数的get方法,header自定义参数
@Test
void testSendGetHttp() {
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.add("clientId", "123123");
headers.add("secret", "321321");
String url = "https://example.com/user";
UriComponentsBuilder builder = UriComponentsBuilder.fromUriString(url)
.queryParam("username", "张三")
.queryParam("email", "");
String path = builder.build().toUri().toString();
log.info("path: {}", path);
HttpEntity<String> entity = new HttpEntity<>(headers);
ResponseEntity<String> response = restTemplate.exchange(path, HttpMethod.GET, entity, String.class);
Assert.assertNotNull(response);
log.info("response body: {}", response.getBody());
}
Post
带参数的Post方法,header自定义参数
@Test
void testSendPostHttp(){
RestTemplate template = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
headers.add("clientId", "123123");
headers.add("secret", "321321");
List<Map<String, Object>> list = new ArrayList<>();
Map<String, Object> departmentUserMap = new HashMap<>();
departmentUserMap.put("department", "[\"testDepartment\"]");
departmentUserMap.put("post", "管理员");
departmentUserMap.put("recursive", "true");
list.add(departmentUserMap);
HttpEntity<List<Map<String, Object>>> httpEntity = new HttpEntity<>(list, headers);
String url = "https://example.com/department/user";
ResponseEntity<Map> response = template.exchange(url, HttpMethod.POST, httpEntity, Map.class);
Assert.assertNotNull(response);
log.info("response body: {}", response.getBody());
}