java web服务器跨域访问支持

基于安全的考虑,AJAX只能访问本域下的资源,而不能跨域访问。

最近项目采用phonegap+sencha touch进行移动开发,后台数据采用cxf发布restfull的接口,此时面临的问题就是跨域访问问题。在网上找了很多资料,基本上都采用jsonp非官方协议来处理,jquery对此提供了很好的支持,同时sencha touch也提供了支持,但后台返回内容需要进行包装。在sencha touch文档的ajax部份发现可以通过修改服务器配置来实现跨域请求,在网上找到的资料:http://www.verydemo.com/demo_c199_i15317.html ,官网:http://software.dzhuvinov.com/cors-filter-installation.html

 

对于服务器端支持配置进行简单记录

1、到官网下载依赖包:cors-filter-1.7.jarjava-property-utils-1.9.jar,并导入项目;

2、在web.xml文件中添加filter

<filter>
    <filter-name>CORS</filter-name>
    <filter-class>com.thetransactioncompany.cors.CORSFilter</filter-class>
</filter>
<filter-mapping>
        <filter-name>CORS</filter-name>
        <url-pattern>/*</url-pattern>
</filter-mapping>

 

至此就完成了服务器端跨域支持配置,在前端就可以像访问同域一样进行ajax请求了。

你可能感兴趣的:(跨域)