restTemplate 发起请求(带token认证,参数格式json)

restTemplate 发起http请求,请求信息里携带token

import com.alibaba.fastjson.JSON;
import org.springframework.web.client.RestTemplate;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
/**
 * restTemplate 请求其他服务(带token认证,参数格式json)
 */
Map map = new HashMap<>();
map.put("key", "value");
//...组装参数
String s = JSON.toJSONString(map);
//转成json格式
JSONObject jsonObject = JSONObject.parseObject(s);
HttpHeaders headers = new HttpHeaders();
//token 是请求的token
headers.set(HttpHeaders.AUTHORIZATION, token);
headers.set(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE);
HttpEntity entity = new HttpEntity<>(jsonObject, headers);
ResponseResult json = restTemplate.exchange("http://" + xxx+ "/xxx/xxx", HttpMethod.POST,entity,ResponseResult.class).getBody();

ResponseResult.class 是自己写的自定义类

你可能感兴趣的:(spring,boot,restful,resttemplate)