从相对uri使用REST Web服务

时间:2017-02-17 20:01:39

标签: spring web-services rest resttemplate

是否可以从相对uri使用RESTful Web服务,而不是绝对?当我运行以下代码时,我得到一个异常java.lang.IllegalArgumentException:URI不是绝对的。

RestTemplate rt = new RestTemplate();
User x = rt.getForObject("/dispatcher/rest/hello",User.class);

我问这个的原因是因为如果我在uri前加上localhost:8080 /,当应用程序部署时,我必须更改所有的uri前缀。

1 个答案:

答案 0 :(得分:1)

除非你有一个添加URI前缀的辅助方法,我在这里看不到,该方法应该抛出该错误,因为它没有用于调用REST API的绝对URI。我不知道如何使用绝对URI。

关于部署,您可以在数据库或配置文件中使用配置表,并根据您要部署到的环境(DEV,TEST,PROD等)读入属性,例如您的URI前缀。