У меня возникает эта проблема, когда я запускаю команду npm, я получаю сообщение о невозможности аутентификации в реестре npm (размещенном в Azure DevOps) и подозреваю, что это может быть из-за не генерирует заголовок авторизации и не отправляет его вместе с запросом.
Например, когда я выполняю следующие команды: npm ping
или npm install
, он выдает эту жалобу.
npm ERR! code E401
npm ERR! Unable to authenticate, your authentication token seems to be invalid.
npm ERR! To correct this please trying logging in again with:
npm ERR! npm login
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\blah\AppData\Roaming\npm-cache\_logs\2020-01-15T06_30_45_484Z-debug.log
У меня есть другой реестр npm (размещенный в другом экземпляре Azure DevOps), который работает, когда я выполняю эти команды и при просмотре запросов в Fiddler, я заметил, что рабочий запрос имеет заголовок авторизации, содержащий имя пользователя и пароль для доступа к реестру, однако, у нерабочего запроса (к нерабочему реестру) его нет.
Кроме URL-адреса реестра, имени пользователя и пароля в файле npmr c, они в основном такие же, как показано здесь:
registry=https://devops.blah/npm/registry/
always-auth=true
strict-ssl=false
; Treat this auth token like a password. Do not share it with anyone, including Microsoft support. This token expires on or before 02/03/2020.
; begin auth token
//devops.blah/npm/registry/:username=blah
//devops.blah/npm/registry/:_password=blahpassword
//devops.blah/npm/registry/:email=npm requires email to be set but doesn't use the value
//devops.blah/npm/:username=blah
//devops.blah/npm/:_password=blahpassword
//devops.blah/npm/:email=npm requires email to be set but doesn't use the value
; end auth token
Команда npm была введена на той же машине и в той же команде pr сеанс ompt (при этом я переключаюсь на соответствующий профиль npmr c).
Что может заставить команду npm не включать заголовок авторизации в свой запрос к нерабочему реестру?