说道跨域的问题,由来已久,不是一个特别复杂的事情,但是从未认真的整理过相关文档,今年做个笔记吧!
配置服务器(Nginx)
在遇到跨域的情况的时候,客户端会先向服务器发送一个options
的请求用以确认服务器是否允许跨域请求!
location / {
if ($request_method = 'OPTIONS') {
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS;
add_header Access-Control-Allow-Headers Content-Type,Content-Range,Content-Disposition,Content-Description;
return 204;
}
}
修改代码(PHP)
再服务器允许跨域请求后,每次返回都得带上下面的头!
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
header('Access-Control-Allow-Headers: Content-Type, Content-Range, Content-Disposition, Content-Description');
本文由 陌上花开 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Feb 28, 2017 at 11:17 am