说一下CORS:
浏览器在跨域发送xhr的时候会像请求头加入一些内容
1.如果请求是简单请求
就会加一个 origin 来指明 协议+域名+端口
浏览器根据响应中access-control-allow-origin的值,xhronerror来决定是否报错
2.如果请求是非简单请求 (此时发送的是OPTIONS请求)
浏览器至少会多出两个字段,
access-control-request-methods
access-control-request-headers
来列出浏览器使用的方法和使用的额外请求字段。
区分简单请求和非简单请求:
如果
(1)请求方法是head、get、post
(2) 请求头字段不超过
Accept
Content-Language
Content-Type:application/x-www-form-urlencoded、multipart/form-data、text/plain