Java Rest服务中的Spring RestTemplate postForObject调用
我目前正在处理一个Rest服务,该服务需要调用同一服务器上提供的另一个Rest方法。例如,path/myPath/foo上的方法需要从path/myPath/restApi/bar上的方法请求一些东西 如何使用SpringRestTemplate(或其他)而不使用RestTemplate.postForObject(…)方法中的完整路径(无法使用完整路径,因为在构建工件时不知道工件的url和端口)来实现这一点 谢谢你的帮助! 顺致敬意,Java Rest服务中的Spring RestTemplate postForObject调用,java,spring,resttemplate,Java,Spring,Resttemplate,我目前正在处理一个Rest服务,该服务需要调用同一服务器上提供的另一个Rest方法。例如,path/myPath/foo上的方法需要从path/myPath/restApi/bar上的方法请求一些东西 如何使用SpringRestTemplate(或其他)而不使用RestTemplate.postForObject(…)方法中的完整路径(无法使用完整路径,因为在构建工件时不知道工件的url和端口)来实现这一点 谢谢你的帮助! 顺致敬意, Andy首先,为什么要使用URL访问同一服务器上的REST
Andy首先,为什么要使用URL访问同一服务器上的REST方法(看起来是同一个应用程序),而不是直接调用第二个URL后面的服务方法?如果这是同一个servlet容器,但有多个WAR文件,则可以 回到你的问题:你有主机和端口吗。您的意思是,当客户端试图访问
/myPath/foo
时,服务器应该访问/myPath/restApi/bar
。当您处于控制器/操作/处理程序方法/REST框架提供的任何方法中时,以某种方式获取HttpServletRequest。通过使用请求对象,您可以找出客户端用于连接到第一个web服务的主机和端口。您可以使用该信息调用同一服务器上的第二个web服务
再想一想:如果这是同一台服务器,难道你不能直接使用
localhost
?首先,为什么你要使用URL访问同一台服务器上的REST方法(看起来是同一个应用程序),而不是直接调用第二个URL后面的服务方法?如果这是同一个servlet容器,但有多个WAR文件,则可以
回到你的问题:你有主机和端口吗。您的意思是,当客户端试图访问/myPath/foo
时,服务器应该访问/myPath/restApi/bar
。当您处于控制器/操作/处理程序方法/REST框架提供的任何方法中时,以某种方式获取HttpServletRequest。通过使用请求对象,您可以找出客户端用于连接到第一个web服务的主机和端口。您可以使用该信息调用同一服务器上的第二个web服务
再想一想:如果这是同一台服务器,您就不能使用
localhost
?谢谢。事实上,我能够得到HttpServletRequest并以这种方式处理它。谢谢。事实上,我能够获得HttpServletRequest并以这种方式处理它。