RestTemplate在声称有数据时不会发送数据

时间:2018-11-08 21:00:54

标签: java spring spring-boot resttemplate

我已经检查了RestTemplate does send null values in object,但是我的问题似乎是由其他原因引起的。

我有两个服务,服务A POST的数据要服务B。在服务A中,您可以找到以下代码:

HttpEntity<SomeEntity> httpHt = new HttpEntity<SomeEntity>(ht);
ResponseEntity<SomeEntity> htResponse = restTemplate.exchange(uri, HttpMethod.POST, httpHt, new ParameterizedTypeReference<SomeEntity>() {});

服务B失败,因为检索到的实体为空。我在ht中检查了null,但没有,我可以使用它的任何吸气剂并显示其值。

我添加了这一行

restTemplate.setInterceptors(Collections.singletonList(new LoggingRestTemplate())); 

found on SO。从创建的日志中,我可以看到RestTemplate claims 已发送数据:

14:56:11.864 [http-nio-8090-exec-1] DEBUG d.a.e.a.c.l.LoggingRestTemplate - Request body : {"SomeId":null,"OtherId":"17","version":0}

但是,当我使用捕获网络流量时,可以看到没有发送有效负载: enter image description here

由于还使用REST调用了服务A,因此我检查了是否可以在跟踪中看到该数据。并且显示了有效负载,因此我捕获数据的方式应该没有问题: enter image description here

我尝试使用Spring Boot 2.0.6和2.1.0,效果相同。据我所知,使服务A无法正确发送数据。

0 个答案:

没有答案