首页 > 解决方案 > Heroku 服务器上的 CORS 策略问题

问题描述

我做了一个客户端-服务器应用程序。后端使用 Node、Express 和 MongoDB Atlas。

我已经安装了 CORS 并将其用作中间件,例如:

const cors = require('cors')

app.use(cors())

然后我将它部署到返回端点的heroku;喜欢:https ://express-server.herokuapp.com

我在我的客户端中使用了基于 React 的端点。

我使用 axios 向服务器发出请求,例如:

const response = await axios.post('https://express-server.herokuapp.com/users/login' ,{some data here})

这是发生错误的地方。每次我提出请求时,控制台都会弹出以下响应。

在此处输入图像描述

这个有什么解决办法??????

标签: javascriptnode.jsreactjsherokupreflight

解决方案


您必须在您的服务器中定义应该接受来自哪个源请求

假设您的 localhost 在端口 3000 上运行。试试这个代码

app.use(
    cors({
        origin: "http://localhost:3000", 
        credentials: true,
    })
);

注意:凭据 true 设置为仅传递 HTTP cookie


推荐阅读