CORS - Cross-origin resoruce sharing
1.什么是CORS
允许浏览器跨源服务器,发出XMLHttpRequest请求,克服了AJAX只能同源使用的限制。
2.特点
- 浏览器自动完成(在请求头中输入特殊头 或 发送特殊请求)
- 服务需器需要支持(响应头中需要有特殊的字段)
3.简单请求(Simple requests) 和 预检请求(Preflighted requests)
满足以下全部条件的请求 为简单请求
-
请求方法: GET , HEAD , POST
-
请求头仅包含如下内容:
Accept
Accept-Language
Content-Language
Content-Type
-
Content-Type 仅支持如下三种:
application/-www-form-urlencoded
multipart/form-data
text/plain
不满足以上任意一点的请求都是预检请求
4.简单请求发送流程
-
请求头中 携带 Origin 表明自己来自哪个域
-
响应
如果请求头中的Origin在服务器接受