web-dev-qa-db-fra.com

400 Mauvaise demande lors de la connexion / la poussée du paquet NPM à Nexus?

J'essaie d'utiliser un registre privé npm du registre de mes projets NODEJS et j'utilise Nexus pour cette affaire. J'ai gardé admin utilisateur à utiliser, au moins pour tester et de garantir qu'il n'y a pas de problème d'autorisation. Cependant, je peux me connecter ni publier à l'aide de npm login --registry <private-registry-address> et npm publish --registry <private-registry-address> réceptivement. J'ai utilisé plusieurs méthodes, d'abord j'ai ajouté manuellement des entrées dans .npmrc Fichier comme suit:

Celui-ci est mentionné dans Nexus 3 Docs :

➜  echo "email=$NPM_EMAIL" > $HOME/.npmrc                                       
➜  echo "_auth=$(echo -n "$NPM_USER:$NPM_PASS" | openssl base64)" >> $HOME/.npmrc
➜  echo "always-auth=true" >> $HOME/.npmrc

Ensuite, j'essaie de publier en utilisant npm publish --registry http://172.17.0.1:8081/repository/npmtest/, mais ça me donne juste:

npm ERR! code E400
npm ERR! 400 Bad Request - PUT http://172.17.0.1:8081/repository/npmtest/mypackage

Celui-ci est une sorte de fonctionnaire dans NPM Docs :

Ici, je me connecte au repo en utilisant les informations d'identification que j'ai comme suit:

➜  npm login --registry http://172.17.0.1:8081/repository/npmtest/

et entrez mes crédits de connexion:

Username: admin
Password: 
Email: (this IS public) [email protected]

Mais malheureusement, cela me donne la même erreur exacte:

npm ERR! code E400
npm ERR! 400 Bad Request - PUT http://localhost:8081/repository/npmtest/-/user/org.couchdb.user:admin

J'ai ajouté npm Bearer Token Realm À Nexus car j'ai vu dans de nombreuses discussions et cela n'a pas aussi fait de différence.

J'ai essayé d'utiliser un autre repo verdaccio et cela fonctionnait normalement, c'est pourquoi je suis sûr que c'est une question de Nexus.

Remarque: J'utilise tous les gestionnaires de repo (Nexus et Verdaccio) en tant que conteneurs Docker, de toute façon, cela ne devrait pas être un problème.

Je cours npm Version 6.10

Quelle pourrait être une solution ici pour que Nexus fonctionne?

4
Badr

Assurez-vous d'avoir sélectionné le format et tapez corrects pour le référentiel. Dans mon cas, j'ai accidentellement créé le référentiel NPM avec le format incorrect.

J'ai créé un Format: nuget à la place de Format: npm.

Vous pouvez voir le format lorsque vous sélectionnez le référentiel dans le tableau de bord Nexus.

0
dvanrensburg