Spring boot 春假在当地工作正常,但在生产中失败

Spring boot 春假在当地工作正常,但在生产中失败,spring-boot,microservices,spring-rest,Spring Boot,Microservices,Spring Rest,我有一个rest端点,我在程序中使用它,它在本地运行良好,但在生产中失败 例外情况 "message":"HTTP exception while calling TnDM", "logger_name":"com.myapp.resource.MyResource", "thread_name":"http-nio-8080-exec-7", "level":"ERROR", "level_value":40000, "stack_trace":"org.springframework.web

我有一个rest端点,我在程序中使用它,它在本地运行良好,但在生产中失败

例外情况

"message":"HTTP exception while calling TnDM",
"logger_name":"com.myapp.resource.MyResource",
"thread_name":"http-nio-8080-exec-7",
"level":"ERROR",
"level_value":40000,
"stack_trace":"org.springframework.web.client.HttpServerErrorException: 500 Internal Server Error\n\t
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:89)\n\t
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:708)\n\t
at
本地工作正常,200 OK

{
    "text": "Hello_Message"
}
代码

HttpHeaders=newhttpheaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HelloWorldRequest req=新的HelloWorldRequest();
请求。设置名称(“我的名称”);
HttpEntity=新的HttpEntity(请求,标题);
ResponseEntity response=restemplate.exchange(url,HttpMethod.POST,entity,String.class);

创建一个pojo来定义您上面提到的响应类型:

public class Response
 {
    private String text;
    //getter, setter
 }
然后更改此行:

ResponseEntity response=restemplate.exchange(url, HttpMethod.POST,实体,String.class)

为此:

ResponseEntity<Response> response = restTemplate.exchange(url, HttpMethod.POST, entity, Response.class);
ResponseEntity response=restemplate.exchange(url、HttpMethod.POST、实体、response.class);

希望,这会奏效

您的本地响应表示它是特定类型的json对象<代码>{“text”:“您的消息”}但在您的
响应中,响应的响应=restemplate.exchange(url,HttpMethod.POST,entity,String.class)
,您将其设置为
String.class
。你能用`
ResponseEntity response=restTemplate.exchange(url,HttpMethod.POST,entity,YourResponseType.class)来改变这一点吗`