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.
- Installation des dépendances
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-middleware
Copier après la connexion
Parmi eux :
express est un framework Web Nodejs populaire qui fournit un support pratique de routage et de middlewarehttp-proxy- Middleware est un middleware utilisé pour envoyer des requêtes par proxy à d'autres serveurs.
Créer un serveur
Créer un serveur Nodejs afin que nous puissions proxy les requêtes. Créez un fichier nommé "server.js" dans le dossier du projet et entrez le code suivant :
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');
});
Copier après la connexion
Introduce express et http-proxy-middleware modules- #🎜 🎜#Create une application express
- Utilisez le middleware http-proxy-middleware pour proxyer les requêtes et définissez notre cible sur le site Web que nous voulons proxy
- Utilisez l'option changeOrigin pour changer la source afin que les entêtes de requête HTTP sont correctement paramétrés
- Démarrez l'application en écoute sur le port 3000.
Serveur de Configuration
Notre serveur proxy est maintenant prêt, mais pour que les requêtes d'envoi de proxy fonctionnent correctement, nous la configuration du serveur est requise. Ajoutez le code suivant dans le fichier "server.js" :
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();
});
Copier après la connexion
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 Server
Maintenant que nous avons terminé l'installation et la configuration du serveur proxy, nous pouvons démarrer le serveur en exécutant la commande suivante : #🎜🎜 #node server.js
Copier après la connexion
Ensuite, nous pouvons accéder à notre serveur proxy dans le navigateur, tel que http://localhost:3000, pour accéder au site Web proxy.
SummaryUtiliser le proxy Nodejs pour envoyer des requêtes est une méthode relativement simple et ne nécessite pas beaucoup de code. Il nous suffit d'installer les dépendances nécessaires, de créer un serveur, de le configurer, puis nous pouvons effectuer des requêtes proxy dans notre environnement local. Grâce aux demandes de proxy, nous pouvons non seulement obtenir des données de sites Web qui ne prennent pas en charge l'accès direct, mais également accéder aux ressources sur tous les domaines, ainsi qu'améliorer l'efficacité des demandes de proxy en ajoutant d'autres fonctionnalités. 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!