CORS(跨域资源共享) 的配置

前端之家收集整理的这篇文章主要介绍了CORS(跨域资源共享) 的配置前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

兼容情况:


各种新版本的ie10,firefox,opera,safari,chrome以及移动版safari和android浏览器
ie9及一下版本请使用flash方式来兼容

通过OPTIONS请求握手一次的方式实现跨根域发送请求,需要服务端配置


Nginx增加类似如下配置:

[html] view plain copy
  1. server{
  2. location/{
  3. if($request_method='OPTIONS'){
  4. add_header'Access-Control-Allow-Origin''*';
  5. add_header'Access-Control-Allow-Credentials''true';
  6. add_header'Access-Control-Allow-Methods''GET,POST,OPTIONS';
  7. add_header'Access-Control-Allow-Headers''DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';
  8. #add_header'Access-Control-Max-Age'1728000;
  9. add_header'Content-Type''text/plaincharset=UTF-8';
  10. add_header'Content-Length'0;
  11. return200;
  12. }
  13. }

如果没有Nginx转发,java需要如下代码


tomcat下CORS(跨域资源共享) 的配置
CORS介绍
它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源。而这种访问是被同源策略所禁止的。CORS系统定义了一种浏览器和服务器交互的方式来确定是否允许跨域请求。 它是一个妥协,有更大的灵活性,但比起简单地允许所有这些的要求来说更加安全。
而W3C的官方文档目前还是工作草案,但是正在朝着W3C推荐的方向前进。
简言之,CORS就是为了让AJAX可以实现可控的跨域访问而生的。

Tomcat下的配置
下载cors-filter-1.7.jar,java-property-utils-1.9.jar这两个库文件,放到lib目录下。(可在
http://search.maven.org上查询并下载。)工程项目中web.xml中的配置如下:

copy

<filter>
  • filter-name>CORS</>
  • filter-class>com.thetransactioncompany.cors.CORSFilterinit-paramparam-name>cors.allowOriginparam-value>*>cors.supportedMethods>GET,HEAD,PUT,DELETE>cors.supportedHeaders>Accept,Origin,Last-Modified>cors.exposedHeaders>Set-Cookie>cors.supportsCredentials>truefilter-mappingurl-pattern>/*>

  • http://software.dzhuvinov.com/cors-filter-installation.html 原文链接:https://www.f2er.com/ajax/162333.html

    猜你在找的Ajax相关文章