📌  相关文章
📜  在节点 js 中添加 access-control-allow-origin - Javascript (1)

📅  最后修改于: 2023-12-03 15:08:06.031000             🧑  作者: Mango

在节点 js 中添加 access-control-allow-origin

在前端开发中,可能会遇到跨域访问的问题。如果需要访问不同处于不同域名或不同端口的服务器资源时,由于浏览器的同源策略限制,很有可能会抛出跨域访问异常。其中一种解决跨域的方式是使用 access-control-allow-origin

Access-Control-Allow-Origin 是HTTP响应头,用于指定允许访问该资源的外域。在节点 js 中添加 access-control-allow-origin 的方式很简单。

  1. 在代码中添加如下内容
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响应头,允许所有域名的请求访问该资源。

  1. 使用 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,根据具体情况选择适合自己的方式即可。