gpt4 book ai didi

java - 使用 spring/tomcat 的 http 请求响应不正确

转载 作者:行者123 更新时间:2023-11-28 23:19:31 24 4
gpt4 key购买 nike

我遇到过从简单的 HTTP 请求中收到错误答案的情况。

在远程 tomcat 服务器 A 上我有:

@RequestMapping(value = "/test/dosomething", method = RequestMethod.GET)
public String doSomething() {
RestTemplate rt = new RestTemplate();
ResponseEntity<String> rpe =
rt.getForEntity("http://foo.dns/test/getstring", String.class);
return "redirect:" + rpe.getBody();
}

这个方法调用远程tomcat服务器B上的/test/getstring

@RequestMapping(value = "/test/getstring", method = RequestMethod.GET)
@ResponseBody
public String getString() {
return "http:///test.dns";
}

当这在远程服务器 A 上运行 rpe.getBody() 的结果是 '{} http://test.d '.这当然是错误的,是行不通的。

这是代码:

  • 在远程 websphere 服务器 A 和 B 上运行时得到正确的结果 (http://test.dns)
  • 当使用 intellij/tomcat 在本地运行 A 和 B 时有一个正确的结果
  • 本地运行A,远程运行B,结果正确
  • 远程运行A,本地运行B,结果正确
  • 当执行从远程 A 到远程 B 的 curl 有正确的结果时

有什么想法会导致这种行为吗?

我也尝试使用 apache httpClient 重写 resttemplate 部分,但结果相同。

服务器A有tomcat 7.0.69和java 8服务器 B 有 tomcat 7.0.69 和 java 7本地和远程

最佳答案

您在服务器 b 上使用@ResponseBody,因此它以 json 形式返回响应

关于java - 使用 spring/tomcat 的 http 请求响应不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45516202/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com