Appearance
CORS跨域
CORS背后的基本思想是使用自定义的HTTP头部允许浏览器和服务器相互了解对方,从而决定请求或响应成功与否
CORS是Cross-Origin Resource Sharing的缩写,即跨域资源共享。CORS的基本思想就是使用自定义的HTTP头部让浏览器与服务器进行沟通,从而决定请求或响应是应该成功,还是应该失败。
对比
优点:
- 功能强大
缺点:
- 需要服务端来配合实现(其实很简单~)
- IE必须IE10以上。。。
实现
涉及的HTTP请求头
- Access-Control-Allow-Origin : 指定授权访问的域
- Access-Control-Allow-Methods:授权请求的方法(GET, POST, PUT, DELETE,OPTIONS等)
apache
Access-Control-Allow-Origin在服务端哪里配置
- nginx
js
location / {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept";
add_header Access-Control-Allow-Methods "GET, POST, OPTIONS";
}
- apache 2.1 httpd.conf文件中 把#注释符去掉 LoadModule headers_module modules/mod_headers.so
目的是开启apache头信息自定义模块
2.2 然后在独立资源域名的虚拟主机添加一行
Header set Access-Control-Allow-Origin *
意思是对这个域名的资源进行访问时,添加一个头信息
问题:
- CORS如何设置
- 加上CORS之后从发起到请求正式成功的过程