HTTP请求和响应头部信息以及预检请求options请求

315 阅读1分钟

options请求 & 头部字段

options请求

当浏览器跨域发起非简单请求时,会先发一个预检请求,即options请求。首先发起options请求目的:

  • 用来向服务器询问该请求是否有权限访问
  • 服务器支持的请求方式以及支持的请求头部

什么是简单请求

同时满足以下三个条件时,为简单请求,否则是非简单请求。

  • HTTP请求方式为:get,post,head
  • 请求头只有几个特定的字段
    • Accept
    • Accept-Language
    • Content-Language
    • Content-Type
    • DPR
    • Downlink
    • Save-Data
    • Viewport-Width
    • Width
  • Content-Type字段值需满足
    • application/x-www-form-urlencoded
    • mutipart/form-data
    • text/plain

非简单请求

发起非简单请求之前,先发个预检请求,即options请求。如果服务器允许访问的话,那么options请求的响应头部会有以下几个字段:

  • Access-Control-Allow-Origin:服务器允许的跨域源,必有字段。
  • Access-Control-Allow-Method:服务器允许的Method方式。
  • Access-Control-Allow-Headers:服务器允许的请求头,在Access-Control-Request-Headers请求字段中出现的字段。

常见请求头

常见响应头