Search code examples
htmlhttppostangularhttp-options-method

Why http request send twice from client to server ( OPTION and POST )


When I click the submit button, http request send twice from client to server. first one is OPTIONS and other one is POST method.

login form enter image description here

HTTP Requests enter image description here


Solution

  • According to the Mozilla Developer Network:

    Preflighted requests

    Unlike simple requests (discussed above), "preflighted" requests first send an HTTP OPTIONS request header to the resource on the other domain, in order to determine whether the actual request is safe to send. Cross-site requests are preflighted like this since they may have implications to user data. In particular, a request is preflighted if:

    It uses methods other than GET or POST. Also, if POST is used to send request data with a Content-Type other than application/x-www-form-urlencoded, multipart/form-data, or text/plain, e.g. if the POST request sends an XML payload to the server using application/xml or text/xml, then the request is preflighted. It sets custom headers in the request (e.g. the request uses a header such as X-PINGOTHER)