Maison > Article > interface Web > Comment configurer l'autorisation des requêtes inter-domaines à l'aide de Node.js
Node.js est un environnement d'exécution JavaScript très populaire pour créer des applications et des API côté serveur. Le partage de ressources cross-origine (CORS) est une fonctionnalité essentielle lors de la création d'applications Web ou du développement d'applications JavaScript basées sur des API RESTful. CORS permet aux navigateurs de demander des ressources à différents noms de domaine ou à différents ports sans connaître les détails inter-domaines ni utiliser de serveur proxy. Dans cet article, nous verrons comment configurer l'autorisation des requêtes inter-domaines à l'aide de Node.js.
Le partage de ressources d'origine croisée (CORS) est un mécanisme de sécurité dans les applications Web qui permet aux applications Web de demander et de répondre à des ressources provenant de différents noms de domaine, de différents ports ou de différents protocoles. Par exemple, les requêtes inter-domaines doivent être traitées lors de l'utilisation de JavaScript et d'AJAX pour demander des données d'un domaine à un autre. En raison de la politique de même origine du navigateur, les navigateurs n'autorisent généralement pas les demandes de ressources provenant d'autres domaines, ce qui constitue un risque pour la sécurité.
Dans l'environnement Node.js, nous pouvons utiliser le module CORS pour configurer l'autorisation des requêtes inter-domaines. Le module CORS fournit un middleware pour gérer les requêtes inter-domaines. Vous pouvez installer le module à l'aide de la commande npm :
npm install cors
Après l'installation, nous pouvons utiliser CORS dans l'application. Voici un exemple simple :
const express = require('express'); const cors = require('cors'); const app = express(); app.use(cors()); app.get('/api/data', (req, res) => { // 处理 GET 请求 }); app.post('/api/data', (req, res) => { // 处理 POST 请求 }); app.listen(3000, () => { console.log('Server is listening on port 3000'); });
Dans l'exemple ci-dessus, nous avons introduit les modules Express et CORS et activé CORS dans l'application Express à l'aide de l'instruction app.use(cors())
. Cela permet d'effectuer des types de requêtes GET, POST, etc. à partir de n'importe quelle source sans nécessiter que chaque requête soit traitée individuellement. app.use(cors())
语句在 Express 应用程序中启用 CORS。这允许从任何来源发起 GET、POST 等类型的请求,而不需要对每个请求进行单独处理。
如果需要更多的控制权和灵活性,我们可以使用 CORS 模块提供的配置选项。以下是一些常用的高级设置:
*
,即所有来源均可。'GET,HEAD,PUT,PATCH,POST,DELETE'
。以下是一些示例:
const express = require('express'); const cors = require('cors'); const app = express(); app.use(cors({ origin: 'http://localhost:8080', methods: ['GET', 'POST'], allowedHeaders: ['Content-Type', 'Authorization'], exposedHeaders: ['Content-Length', 'X-Foo', 'X-Bar'], credentials: true, maxAge: 86400, preflightContinue: false })); app.get('/api/data', (req, res) => { // 处理 GET 请求 }); app.post('/api/data', (req, res) => { // 处理 POST 请求 }); app.listen(3000, () => { console.log('Server is listening on port 3000'); });
在以上示例中,我们使用了 cors()
origine : spécifiez les sources de requête autorisées, la valeur par défaut est *
, c'est-à-dire que toutes les sources sont acceptables.
'GET,HEAD,PUT,PATCH,POST,DELETE'
. 🎜🎜allowedHeaders : spécifiez le tableau des en-têtes de requête autorisés. La valeur par défaut est un tableau vide, c'est-à-dire que tous les en-têtes de requête sont acceptables. 🎜🎜exposedHeaders : spécifiez le tableau d'en-têtes de réponse exposé au client. La valeur par défaut est un tableau vide. 🎜🎜informations d'identification : spécifiez pour autoriser la réception de cookies inter-domaines, la valeur par défaut est false. 🎜🎜maxAge : Spécifie la durée de validité (en secondes) de la demande de contrôle en amont, la valeur par défaut est 86 400 (soit un jour). 🎜🎜preflightContinue : Spécifie s'il faut continuer à traiter les demandes de contrôle en amont, la valeur par défaut est false. 🎜cors()
pour spécifier les sources de requêtes autorisées, autoriser la réception de cookies inter-domaines, etc. . Ces options peuvent être définies au cas par cas. 🎜🎜🎜Résumé🎜🎜🎜Dans cet article, nous avons expliqué comment configurer l'autorisation des requêtes inter-domaines à l'aide de Node.js. CORS est un mécanisme de sécurité des applications Web très important qui permet les requêtes inter-domaines, rendant l'interaction des données entre les applications Web plus simple et plus sécurisée. Lors de la création d'applications à l'aide de Node.js, nous pouvons utiliser le module CORS pour gérer facilement les requêtes d'origine croisée. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!