CORS政策已阻止从来源“ http:// localhost:3001”访问“ blahblahblah”的访问权限

时间:2020-02-24 09:20:01

标签: reactjs api cors fetch

我正在尝试获取一个api,但是我一遍又一遍地遇到相同的错误,并且我已经检查了服务器,并且那里没有问题,如果您能帮助我,我在徘徊。 这是我写的代码:

import React from 'react';


export default class FetchData extends React.Component {


    async componentDidMount() {
        var myHeaders = new Headers();
        myHeaders.append("Authorization", "sth");

        var requestOptions = {
            method: 'GET',
            headers: myHeaders,
            redirect: 'follow'
        };
        fetch("blahblahblah", requestOptions)
            .then(response => response.json())
            .then(result => console.log(result))
            .catch(error => console.log('error', error));

    }

    render() {
        return <div>
        </div>
    }
}

3 个答案:

答案 0 :(得分:3)

可以通过多种方式解决该问题:

第一- 您的网址在此地址的末尾添加

https://cors-anywhere.herokuapp.com/YOUR URL

第二-

请参阅此文档Proxying API Requests in Development

其他方式-

3 Ways to Fix the CORS Error — and How the Access-Control-Allow-Origin Header Works

答案 1 :(得分:0)

您需要将服务器中的域列入白名单。最简单的方法是使用npm软件包cors进行cors配置

答案 2 :(得分:0)

您是否知道CORS的含义是什么(跨源资源共享),请参阅此链接以了解它[https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS] 您的后端必须接受CORS,并且在请求中发送凭据时,您还必须允许凭据