用RestTemplate碰到的问题

Posted bad_boy_f

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用RestTemplate碰到的问题相关的知识,希望对你有一定的参考价值。

给请求加上头信息

    Request request = new Request();

   HttpHeaders requestHeaders = new HttpHeaders(); requestHeaders.add("accept", "application/json"); requestHeaders.add("content-type", "application/json"); requestHeaders.add("content-length", "256"); requestHeaders.add("authorization", authorization); requestHeaders.setContentType(MediaType.APPLICATION_JSON)
   HttpEntity<?> httpEntity = new HttpEntity<Object>(request, requestHeaders);
  

    ResponseEntity<Response> response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, Response.class);
     return response.getBody();

有些请求是键值对的形式,用request的方法或封装HttpEntity也传不进去参数,可以尝试用下面的方法:

MultiValueMap<String, String> map = new LinkedMultiValueMap<String, String>();
    map.add("shortcut", shortcut);
    map.add("_api_key", apikey);
DefaultResponse response = restTemplate.postForObject(url, map, DefaultResponse.class);

 

以上是关于用RestTemplate碰到的问题的主要内容,如果未能解决你的问题,请参考以下文章

解决spring-boot启动中碰到的问题:Cannot determine embedded database driver class for database type NONE(转)(代码片段

使用RestTemplate在代码内调用POST请求的参数乱码问题

RestTemplate 应该是静态全局声明的吗?

spark关于join后有重复列的问题(org.apache.spark.sql.AnalysisException: Reference '*' is ambiguous)(代码片段

restTemplate 调用异常处理,处理http协议层的错误状态40*,30*等

一文吃透接口调用神器RestTemplate