Maison > Article > interface Web > Le proxy nodejs envoie une demande
Avec le développement rapide d'Internet, l'importance des applications réseau est devenue de plus en plus évidente. Cependant, dans les applications Web, nous n'obtenons pas toujours ce que nous voulons et pouvons avoir besoin d'obtenir des données d'un site Web qui ne prend pas en charge l'accès direct. Ou nous souhaitons accéder à plusieurs domaines, mais en raison de la politique de même origine du navigateur, nous ne pouvons pas partager de ressources entre différents noms de domaine. Tous ces problèmes peuvent être résolus en envoyant des requêtes via un proxy.
Nodejs est un environnement d'exécution JavaScript piloté par événements qui est très adapté aux requêtes proxy. Dans cet article, nous expliquerons comment créer un proxy à l'aide de Nodejs afin de pouvoir accéder à des sites Web qui ne prennent pas en charge l'accès direct ou l'accès entre domaines.
Nodejs utilise npm pour gérer les dépendances des applications Nous pouvons utiliser la commande suivante pour installer les dépendances requises : #🎜🎜 #.
npm install express http-proxy-middlewareParmi eux :
const express = require('express'); const { createProxyMiddleware } = require('http-proxy-middleware'); const app = express(); app.use('/', createProxyMiddleware({ target: 'https://example.com', changeOrigin: true })); app.listen(3000, () => { console.log('Server is running on port 3000'); });
app.use('/', (req, res, next) => { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Headers', 'X-Requested-With'); res.header('Access-Control-Allow-Methods', 'GET, PUT, POST, DELETE, OPTIONS'); next(); });
Le but de ce code est de permettre l'accès entre domaines. Pour chaque requête entrante, nous définissons les en-têtes de réponse pour permettre à toutes les origines ( * ) d'accéder à notre serveur et définissons les méthodes de requête HTTP prises en charge.
Running Servernode server.js
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!