关键字:options http
什么是HTTP 预请求?
首先,浏览器会将http请求分为两类:简单请求和复杂请求

简单请求
1.请求方法是 GET POST HEADER 的其中之一
2.Content-Type是下面的三个之一: application/x-www-form-urlencoded. multipart/form-data. text/plain;
3.只可包含一下Content-type 的header 头:Accept Accep-Language. Content-Language.

复杂请求
除了简单请求都是复杂请求

所以浏览器发显示复杂请求,就会先发起一个 Options 请求,从而检查浏览器是否支持跨域,这个Options 需要带上header头:
Access-Control-Request-Method:
Access-Control-Request-Header:

优化OPTIONS请求

Access-Control-Max-Age这个响应首部表示 preflight request (预检请求)的返回结果(即 Access-Control-Allow-Methods 和Access-Control-Allow-Headers 提供的信息) 可以被缓存的最长时间,单位是秒。(MDN)