Node.js global paramètre de proxy
Je travaille dans une culture du réseau derrière un serveur proxy. Dans mon code, je peux configurer le proxy en utilisant l'approche évoquée dans ce fil (Comment puis-je utiliser un proxy http avec node.js http.Client?).
Mais le problème est que, la plupart du 3ème partie les modules n'ont pas de paramètre de proxy et je ne peux pas modifier leur code pour ajouter le proxy. Aussi mon code peut être utilisé dans un environnement de connexion qui signifie que je ne peux pas coder en dur mon paramètre de proxy dans le code.
Je sais MNP est un paramètre global pour proxy qui est
mnp config configurer le proxy http://proxy.company.com:8080 npm config ensemble https proxy http://proxy.company.com:8080
Mais je n'ai pas trouvé de config similaire dans Node.js.
N'Node.js le soutien mondial de paramètre de proxy de sorte que je n'ai pas besoin de changer tous les codes et allumer et d'éteindre facilement.
- Comme d'Node.js v12, vous pouvez utiliser github.com/gajus/global-agent.
Vous devez vous connecter pour publier un commentaire.
Malheureusement, il semble que les informations de proxy doit être défini sur chaque appel à
http.request
. Nœud de ne pas inclure un mécanisme pour les paramètres de proxy global.La
global-tunnel-ng
module sur NPM apparaît pour gérer cela, cependant:Après les paramètres globaux sont à établir avec un appel à
initialize
, à la foishttp.request
et lademande
de la bibliothèque utilisera les informations de proxy.Le module peut également utiliser le
http_proxy
variable d'environnement:J'ai finalement créé un module pour obtenir cette question (partiellement) résolu. Fondamentalement, ce module réécrit
http.request
fonction, a ajouté le paramètre de proxy puis le feu. Vérifiez mon blog: https://web.archive.org/web/20160110023732/http://blog.shaunxu.me:80/archive/2013/09/05/semi-global-proxy-setting-for-node.js.aspxhttp
module pour envoyer la demande. Juste vous assurer que vousrequire
mon module avant de la 3ème partie.Alors pas de Nodejs, je vous suggère d'utiliser proxychains que je trouve plutôt pratique. Il est probablement disponible dans votre gestionnaire de paquets.
Après la configuration du proxy dans le fichier de config (
/etc/proxychains.conf
pour moi), vous pouvez exécuterproxychains npm start
ouproxychains4 npm start
(c'est à direproxychains [command_to_proxy_transparently]
) et l'ensemble de vos demandes seront déterminées automatiquement.Paramètres de configuration pour moi:
Ce sont les paramètres de base, vous devrez ajouter
(Vous pouvez obtenir l'ip du proxy à l'aide de
nslookup [proxyurl]
)remplacer {idutilisateur} et {mot de passe} avec votre identifiant et votre mot de passe dans votre organisation ou vous connecter à votre machine.