通过获取获取数据有效,但不能与axios一起使用

时间:2019-01-02 17:39:12

标签: reactjs fetch axios

我可以通过获取获取数据

 let myHeaders = new Headers();
        myHeaders.append('X-Auth-Token', token,);
        myHeaders.append('Content-Type', 'application/json');      
            fetch("myUrl", {
            withCredentials: true,
            headers: myHeaders
            }).then(function (response) {
                console.log(response)
            })

但是获取数据不适用于axios。这是我的axios代码

  const headers={
            'X-Auth-Token': token,
            "content-type":"application/json"
        }
        axios.get('myUrl',{headers:headers,withCredentials:true})
            .then(response => {
                console.log(response)
            })
            .catch(err => {
                console.log(err)
            });

1 个答案:

答案 0 :(得分:0)

我以这种方式使用它:

通过控制台日志检查标题对象的状态是否良好。

const headers = {
        'X-Auth-Token': token,
        'content-type': 'application/json'
    };
console.log(headers);
const request = axios.create({
    myUrl,
    headers: myHeaders,
    withCredentials: true
})


request.get() // If you add a string inside the brackets it gets appended to your url
    .then(res => console.log(res))
    .catch(err => console.log(err))

如果您遇到的错误与CORS(跨源资源共享)有关:

如果要允许使用凭据,则您的Access-Control-Allow-Origin不得使用*。您将必须指定确切的协议,域,端口。

您需要将服务器设置为允许您的来源。

这是一个非常常见的问题,您会发现它经常发生。在此处阅读有关cors的更多信息:

https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-Origin