说一下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