面试题杂记02-OPTIONS请求
Posted 搬砖糖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试题杂记02-OPTIONS请求相关的知识,希望对你有一定的参考价值。
- 什么是OPTIONS请求
当使用CORS跨域的时候,一般会发起OPTIONS,这是一道预检请求,检测该接口是否存在等,如返回正常的如200,就会继续发起真正的接口请求
CORS一定会发起OPTIONS请求吗
不一定,只有在复杂请求时,才会预先发起OPTIONS请求,从网上查找的资料显示,触发OPTIONS请求的条件有以下:
1)使用了下面任一HTTP放法:- PUT/DELETE/CONNECT/OPTIONS/TRACE/PATCH。可以看到我们平时使用的GET/POST请求不在此列
2) 人为设置了以下集合之外的首部字段:
- Accept/Accept-Language/Content-Language/Content-Type/DPR/Downlink/Save-Data/Viewport-Width/Width。我们项目组的GET请求会触发OPTIONS应该是触发了这一条件,给Header设置了自定义字段
3) Content-Type的值不属于这些:
- application/x-www-form-urlencoded、multipart/form-data、text/plain。那我们设置的application/json也是会触发的
以上是关于面试题杂记02-OPTIONS请求的主要内容,如果未能解决你的问题,请参考以下文章