java发送post请求以raw形式和 Params形式发送2.0(RestTemplate)
两种形式无非一个是放在body里面,一个是以问号拼接放在链接后面raw形式(body里面)RestTemplate restTemplate = new RestTemplate();//请求头HttpHeaders requestHeaders = new HttpHeaders();requestHeaders.add("Content-Type", "application/json; ch
·
两种形式无非一个是放在body里面,一个是以问号拼接放在链接后面
raw形式(body里面)
RestTemplate restTemplate = new RestTemplate();
//请求头
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.add("Content-Type", "application/json; charset=UTF-8");
//参数
Map map = new HashMap<String, String>();
//或
// MultiValueMap<String, Object> map = new LinkedMultiValueMap<>();
//HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(map , requestHeaders);
HttpEntity httpEntity = new HttpEntity<>(map, requestHeaders);
ResponseEntity<Map> response2 = restTemplate.postForEntity("url", httpEntity, Map.class);
Params形式(问号拼接)
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.add("Content-Type", "application/json; charset=UTF-8");
MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
UriComponents uriComponents = UriComponentsBuilder.fromUriString("http://base-auth/auth/oauth/token")
.queryParam("username", username).queryParam("password", password)
.build();
URI uri = uriComponents.toUri();
HttpEntity<MultiValueMap<String, Object>> httpEntity = new HttpEntity<>(params, requestHeaders);
RestTemplate restTemplate = new RestTemplate();
return restTemplate.postForObject(uri, httpEntity, Map.class);
更多推荐
所有评论(0)