J'ai un Ubuntu VM qui a du mal à se connecter à des sites avec SSL, c'est-à-dire https. Il peut réussir à télécharger des artefacts depuis Internet si l'URL commence par http.
npm install téléchargera les dépendances via https. Existe-t-il de toute façon à le télécharger via http?
Essayez de changer le registre en version http plutôt que celui par défaut https en utilisant la commande
npm config set registry http://registry.npmjs.org/
Comme l'a dit Conlinf, les éléments suivants devraient fonctionner:
npm config set registry http://registry.npmjs.org/
Maintenant, pour ajouter mon Word, vous devez également considérer que le téléchargement sans SSL permet une attaque de l'homme du milieu. C'est seulement pour ajouter un avertissement aux personnes qui liraient le message.
Si vous êtes un développeur solo, le téléchargement direct dans http
ne devrait pas poser beaucoup de problèmes, mais si je voulais attaquer une entreprise en utilisant node.js, j'envisagerais de livrer du code malveillant via npm ... Et d'effectuer une telle attaque sans SSL sera beaucoup plus facile.
Après beaucoup d'essais et d'erreurs, j'ai constaté qu'en plus de tout ce qui a été dit ci-dessus, je dois également définir le https-proxy
à la valeur de http proxy
.
Ainsi, le fichier .npmrc de fin ressemble
proxy=http://username:[email protected]:port/
https-proxy=http://username:[email protected]:port/
strict-ssl=false
registry=http://registry.npmjs.org/
Notez que proxy et https-proxy sont identiques!
Voir les commentaires sur ce fil pour plus d'informations:
https://github.com/npm/npm/issues/8034
J'ai aussi couru un npm cache clean --force
après avoir mis à jour le npmrc pour faire bonne mesure mais je ne sais pas si c'est nécessaire.
J'espère que ça t'as aidé.