我有一个Web应用程序,它对不同端口上的Web服务执行ajax请求(即我的应用程序和服务器是on different domains)。
我无法访问服务器API,所以我无法使用JSONP。
我使用Smiley's HTTP Proxy Servlet解析,因此我的web.xml文件包含此部分:
<servlet>
<servlet-name>rs</servlet-name>
<servlet-class>org.mitre.dsmiley.httpproxy.ProxyServlet</servlet-class>
<init-param>
<param-name>targetUri</param-name>
<!-- my servlet is hosted at http://my_ip:my_port/webapp -->
<param-value>http://my_ip:other_port/rest-services/rs</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>rs</servlet-name>
<url-pattern>/rs/*</url-pattern>
</servlet-mapping>
不幸的是,我必须在不同的机器(开发,测试,生产)上部署Web应用程序,以响应不同的IP地址。
有没有办法让web.xml文件中的IP地址改变,或以某种方式检索当前域?或者我每次编译前都必须手动更改IP地址?
答案 0 :(得分:1)
好的,我自己找到了解决方案。
我只需要用localhost替换IP:
<param-value>http://localhost:other_port/rest-services/rs</param-value>
(对于一个愚蠢的问题,这似乎是一个愚蠢的答案,但我确信我已经尝试了过去而失败了。现在它似乎有效。)