1

我有一些代码试图对另一台服务器上的 REST API 进行 RestTemplate 调用:

String url = "http://$authUrl:$authPort/cdpe/users/current";
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.add("Cookie", rdgLogin.getName() + "=" + rdgLogin.getValue());
requestHeaders.add("Cookie", jsessionId.getName() + "=" + jsessionId.getValue());
RestTemplate restTemplate = new RestTemplate();
HttpEntity requestEntity = new HttpEntity(null, requestHeaders);

ResponseEntity<String> resp = restTemplate.exchange(url, HttpMethod.GET, requestEntity, String.class);

服务器已启动并在端口 8080 上的另一台机器“restserver”上运行。我已验证它已启动并运行并等待连接。

当上面的代码执行时,我得到一个 ConnectionRefused 异常。连接被拒绝http://restserver:8080/cdpe/users/current。通常这意味着 url 错误或服务器没有运行。但是,我可以在同一台机器上使用相同的 URL 执行 curl 命令:

curl http://restserver:8080/cdpe/users/current

我可以得到回应。这让我相信我的 RestTemplate 调用有问题。此外,我可以在与 restserver 相同的机器上执行相同的代码,并且它可以正常工作。知道我做错了什么吗?

4

1 回答 1

0

我是个白痴。我在代码的 $authUrl 部分中输入了 URL,以至于它真的很难检测到。开发商失败。

于 2015-05-28T19:24:29.233 回答