Axios call api with GET become OPTIONS

后端 未结 2 1164
春和景丽
春和景丽 2021-01-12 10:42

I use axios for calling API (in front-end). I use the method \"GET\" :

import axios from \'axios\';
import querystring from \'querystring\';

var url   = \"m         


        
2条回答
  •  心在旅途
    2021-01-12 11:17

    Like @Shilly says, OPTIONS method is pre-flight on modern browsers when Preflighted requests conditions (MDN) :

    In the response header I had Allow:"GET, HEAD, POST, PUT, DELETE". So OPTIONS method is not available and need to configure it on in the server (Apache).

    I do the change on apache (/etc/apache2/sites-available/000-default.conf) :

    Header set Access-Control-Allow-Origin "*"
    Header set Access-Control-Allow-Headers "*"
    Header set Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
    

    In Request headers I have :

    Origin: "null" is a problem. The cause is :

    file:// URLs produce a null Origin which can't be authorized via echo-back. Don't trying to perform a CORS request from a file:// URL (see this post for more details)

    After put my javascript file on a apache server, the Origin was not null but I need to add NelmioCorsBundle to my Symfony project to allow preflight

提交回复
热议问题