正如上面问题所说,当你打开 Chrome 开发工具或者其他抓包工具的时候,会发现一条 POST 请求输出两次,第一次状态显示 OPTION。
一、官方定义
1.OPTIONS 方法是用于请求获得由 Request-URI 标识的资源在请求/响应的通信过程中可以使用的功能选项。
2.该请求方法的响应不能缓存。
3.如果这个 OPTIONS 请求包含一个正文(有 Content-Length 或 Transfer-Encoding 存在),则必须有Content-Type 来指定媒体类型。
虽然规范里没有定义这种正文的用法,但是 HTTP 将来的扩展可能会用它来查询服务器上更详细的信息。
3.如果该 URI 是一个星号(“*”),OPTIONS 请求将试图应用于服务器,而不是某个指定资源。
由于服务器的通信选项通常依赖于资源,所以此“”请求只能作为“ping”或者“no-op”方法