在express中设置cors后使用react和express出现CORS错误

问题描述 投票:0回答:1

我的服务器配置如下。

app.use(cors({
  origin: 'http://localhost:5173', // Allow requests from your frontend
  methods: ['GET', 'POST', 'PUT', 'DELETE', 'OPTIONS'], // Specify allowed methods
  credentials: true // Allow cookies to be sent
}));

我使用passport.js 来帮助进行身份验证。 我点击登录,被重定向到谷歌登录,登录后,我被重定向到我的客户主页。然后我会从后端获取经过身份验证的用户。当我第一次重定向到我的客户端主页时,控制台将记录 cors 错误,访问控制允许原始值设置为我的后端, 错误消息错误响应标头 但有趣的是,当我刷新网页时,cors 错误就会消失。当我检查网络请求时,现在访问控制允许原始值是正确的。 刷新页面后的网络选项卡

过去两天我一直在试图弄清楚发生了什么,但我取得了 0 进展。

我在我的路线之前运行了cors。我在网上查找,使用 gpt,查看我的代码库,没有任何进展。

reactjs express frontend cors
1个回答
0
投票

我最近也遇到了类似的问题。这对我有用:我通过运行 npm i cors 安装了 cors 包。然后,我导入它并在我的服务器文件中配置它,如下所示:

app.use(cors({ origin: 'http://localhost:5173' }));

在我的设置中,Node 服务器在端口 3000 上运行,而 React 在端口 5173 上运行。或者,您可以在 Vite 中设置代理服务器。为此,请将以下内容添加到您的 vite.config.js 文件中:

server: {
 proxy: {
   '/api': {
   target: "http://localhost:3000"
   }
 }
}
© www.soinside.com 2019 - 2024. All rights reserved.