📅  最后修改于: 2023-12-03 15:08:06.031000             🧑  作者: Mango
在前端开发中,可能会遇到跨域访问的问题。如果需要访问不同处于不同域名或不同端口的服务器资源时,由于浏览器的同源策略限制,很有可能会抛出跨域访问异常。其中一种解决跨域的方式是使用 access-control-allow-origin
。
Access-Control-Allow-Origin
是HTTP响应头,用于指定允许访问该资源的外域。在节点 js 中添加 access-control-allow-origin
的方式很简单。
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();
});
在这段代码中,我们添加了一个中间件到 Express 应用中。这个中间件会向所有的请求添加 Access-Control-Allow-Origin
HTTP响应头,允许所有域名的请求访问该资源。
cors
模块Node.js 允许使用第三方模块,其中一个常用的模块是 cors
。这个模块是 Cross-origin resource sharing 的缩写,是一种用于跨域访问的安全策略。
在使用 cors
模块之前,需要安装它:
npm install cors
然后在代码中添加如下内容:
const express = require('express');
const cors = require('cors');
const app = express();
app.use(cors());
这段代码使得所有的请求都会得到 Access-Control-Allow-Origin:*
的响应头,允许所有域名的请求访问该资源。
以上两种方式都可以实现在节点js中添加access-control-allow-origin
,根据具体情况选择适合自己的方式即可。