【问题标题】:Error for cors policy on node js app and react节点js应用程序上的cors策略错误并做出反应
【发布时间】:2022-11-12 13:42:39
【问题描述】:

我已经用node js做了一个应用程序并做出反应,我在namecheap上托管它们,node js上的服务器端是node.kutiza.com,客户端是finanu.kutiza.com,当我在node.kutiza.com上请求时得到一个错误的说法。

从源“http://finanu.kutiza.com”访问“http://node.kutiza.com/krankenkasse/regions”的 XMLHttpRequest 已被 CORS 策略阻止:没有“Access-Control-Allow-Origin”标头存在于请求的资源上。

var express = require('express');
var cors = require('cors');

var krankenkasse_calculator = require('./routes/krankenkasse.js');

const app = express()

app.use(cors({ origin: true, credentials: true }));

const port = 5000

app.all('/', function (req, res, next) {
    res.header("Access-Control-Allow-Origin", "*");
    res.header("Access-Control-Allow-Headers", "X-Requested-With");
    next();
});

app.use('/krankenkasse', krankenkasse_calculator);

app.listen(port, () => console.log(`Example app listening on port ${port}!`))

注意:在本地主机上一切正常

【问题讨论】:

  • 这回答了你的问题了吗? How to enable cors nodejs with express?
  • 客户端是否发送Origin 标头?为什么要覆盖标题res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "X-Requested-With");
  • 我已经测试了你的代码。当客户端发送请求标头Origin时,设置响应标头Access-Control-Allow-Origin。否则没有设置。那么主要的问题是,这个请求头设置了吗?
  • @jabaa 感谢您的回答,我不知道为什么,但首先我只有 app.use(cors()) 而不是我尝试添加到代码中的很多东西,但我不知道为什么它不起作用。
  • 问题不在代码中。代码原样工作正常,即使它包含一些废话。问题出在其他地方。您是否正在部署旧版本?你为什么选择origin: true

标签: javascript node.js reactjs


【解决方案1】:

这是因为我们在您的节点服务器上,您必须允许其他平台之间的资源共享。

为了更好地理解,您可以参考在 1 分钟内解决问题的视频。

https://youtu.be/BVwZAr04bkc

【讨论】:

    【解决方案2】:

    默认情况下,服务器不会接受来自不同域的请求。您可以使用 cors 模块来启用 cors。尝试在 cors 中间件中传递配置。

    const cors = require('cors');
    const corsOptions = {
      origin: 'http://yourclientdomain.com'
    }
    app.use(cors(corsOptions));
    

    【讨论】:

    • 我可以在问题的代码中看到导入和中间件。为什么要使用 origin: 'http://yourclientdomain.com' 而不是 origin: true
    • @Sadhna Shukla 不起作用
    • @jabaa 我也试过了,但它不起作用
    • @arditzogjanu 你不应该在不了解它的作用的情况下从互联网上复制和粘贴代码。这称为cargo cult programming。您会看到此答案不能解决您的问题,也无济于事。
    • @jabaa 你能给我一个解决方案吗?你在说什么 ?
    猜你喜欢
    • 2021-11-02
    • 1970-01-01
    • 2020-08-24
    • 2021-03-17
    • 1970-01-01
    • 1970-01-01
    • 2018-11-19
    • 2021-10-30
    • 1970-01-01
    相关资源
    最近更新 更多