首页 > 解决方案 > CORS 政策问题

问题描述

我在一个做客户端-服务器应用程序的团队中。我们在后端使用 Node.js (v12.18) 作为 API,在前端使用 React (v16.13)。最近我发现了这个与 CORS 策略相关的错误。我正在尝试发送 POST 请求,删除数据库中的一个资源,当尝试删除它时,这是我得到的错误:

CORS 策略已阻止从源“http://localhost:8080/clientes/eliminar”获取从“http://localhost:3000”获取的访问权限:对预检请求的响应未通过访问控制检查:未通过具有 HTTP 正常状态。

就我在论坛和讨论中的研究而言,我总是找到相同的解决方案,即使用“Access-Control-Allow”标题,但我们已经在使用它们。在执行请求时,我尝试通过 DELETE 方法更改 POST 方法,但我发现了同样的问题。

我们当前在后端使用的标头,以防有人想知道我们拥有什么。

app.use(function (req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Credentials", "true");
    res.header("Access-Control-Allow-Methods", "GET, POST");
    res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, token");
    next();
});

我为了解决这个问题而访问的站点与这个站点几乎相同

TYSM 阅读直到这里,并询问您需要的更多信息。每一份帮助都值得赞赏。

标签: node.jsreactjscors

解决方案


您是否已经尝试将 CORS 添加到项目中并将其用作中间件?

//...

const cors = require('cors')

//...


app.use(cors())

推荐阅读