为什么http请求从客户端发送两次到服务器(OPTION和POST)

时间:2016-08-19 08:13:05

标签: html http post angular http-options-method

当我单击提交按钮时,http请求从客户端发送两次到服务器。 第一个是OPTIONS,另一个是POST方法。

登录表单 enter image description here

HTTP请求 enter image description here

1 个答案:

答案 0 :(得分:3)

根据Mozilla Developer Network

  

预检请求

     

与简单请求(如上所述)不同,"预先发布"首先要求   向另一方的资源发送 HTTP OPTIONS 请求标头   域,以确定实际请求是否安全   发送。跨站请求是这样的预检,因为它们可能   对用户数据有影响。特别是,请求是   预防如果:

     

它使用GET或POST以外的方法。此外,如果使用POST发送   使用除以外的Content-Type请求数据   application / x-www-form-urlencoded,multipart / form-data或text / plain,   例如如果POST请求使用XML向服务器发送XML有效负载   application / xml或text / xml,然后请求被预检。它设定   请求中的自定义标头(例如,请求使用标头,例如   X-PINGOTHER)