【发布时间】:2023-03-26 20:30:01
【问题描述】:
我有 2 个应用程序一个调用另一个。在第一个我有
RestTemplate restTemplate = new RestTemplate();
HttpHeaders headers = new HttpHeaders();
MultiValueMap<String, Object> parameters = new LinkedMultiValueMap<>();
parameters.add("stationFrom", stationfrom);
parameters.add("stationTo", stationto);
parameters.add("operator", 5);
parameters.add("dateTimeFrom", sdfnative.format(sdfeskm.parse(departuredate)));
parameters.add("dateTimeTo", sdfnative.format(sdfeskm.parse(departuredate).getTime() + 60*60*1000));
HttpEntity<MultiValueMap<String, Object>> request = new HttpEntity<>(parameters, headers);
jsonTrain = restTemplate.exchange(url, HttpMethod.GET, request, String.class).toString();
url 定义为全局 http://ip:8090/connection/search 当我查看请求时,我可以看到每个参数都有正确的值,但在 restTemplate.exchange 行中我收到错误“缺少参数 stationFrom”
我在提供的 IP 上的端点看起来像:
@GetMapping(value = "/connection/search")
public ResponseEntity<String> getConnection(@RequestParam(value = "stationFrom") int stationFrom,
@RequestParam(value = "stationTo") int stationTo,
@RequestParam(value = "operator") int operator,
@RequestParam(value = "dateTimeFrom") String dateTimeFrom,
@RequestParam(value = "dateTimeTo") String dateTimeTo) throws JSONException
如果 stationFrom 的值为 40 并且我可以在调试/日志中看到它,我不知道为什么它会抛出这个错误
当然,使用相同的数据调用邮递员提供的端点会给我预期的结果:)
【问题讨论】:
标签: spring-boot rest resttemplate