首页 > 解决方案 > Spring Boot RestTemplate postForEntity 但主体为空

问题描述

我想发出一个 Post 请求,它没有用于测试目的的正文(null)。

ResponseEntity<Script> result = restTemplate.postForEntity(uri, null, Script.class);

当身体不为空时,这很好用。但为什么它不适用于 null?(我也尝试过""而不是 null ->same exception)。此外,当我使用 null 正文执行 Postman Post 请求时,我的应用程序可以正常工作,因此错误必须在上面的代码中。

org.springframework.web.client.HttpClientErrorException$UnsupportedMediaType: 415 : [{"timestamp":"2021-06-17T09:35:53.289+00:00","status":415,"error":"Unsupported Media Type","path":"/application"}]
    at org.springframework.web.client.HttpClientErrorException.create(HttpClientErrorException.java:133)
    at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:186)
    at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:125)
    at org.springframework.web.client.ResponseErrorHandler.handleError(ResponseErrorHandler.java:63)
    at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:819)
    at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:777)
    at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:751)
    at org.springframework.web.client.RestTemplate.postForEntity(RestTemplate.java:486)
    at 

是否有另一种方法可以使用 restTemplate 发出(null-body)发布请求?

标签: spring-boothttp-postresttemplate

解决方案


我需要更改nullNull.class


推荐阅读