gpt4 book ai didi

javascript - NodeJS 中请求的资源不存在 'Access-Control-Allow-Origin' header

转载 作者:行者123 更新时间:2023-12-01 01:35:48 26 4
gpt4 key购买 nike

我正在使用运行的 NodeJS 应用程序,

http://localhost:3000

我还有一个 NodeJS API 正在 http://localhost:3002 上运行。

当我在应用程序中调用 API 时,收到以下错误。

Failed to load http://localhost:3002: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access.

我已经在http://localhost:3002server.js文件中添加了CORS

var cors = require('cors');

app.options('*', cors());

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

// define a simple route
app.get('/', (req, res) => {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
res.json({"message": "Welcome to Application"});
});

app.listen(3002, () => {
console.log("Server is listening on port 3002");
});

我仍然收到错误。每当我打开 URL http://localhost:3000 时,我可以在 chrome 开发者控制台中看到错误。

最佳答案

你应该像这样使用cors

app.use(cors()); 
<小时/>

引用

Simple Usage (Enable All CORS Requests)

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

app.use(cors())

app.get('/products/:id', function (req, res, next) {
res.json({msg: 'This is CORS-enabled for all origins!'})
})

app.listen(80, function () {
console.log('CORS-enabled web server listening on port 80')
})

关于javascript - NodeJS 中请求的资源不存在 'Access-Control-Allow-Origin' header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52837604/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com