为什么 Sonatype Nexus 对“npm login”响应 405 错误?

Der*_*ler 4 nexus npm

当我尝试npm login进入我们的 Nexus Repository Manager npm 存储库时,我收到一条回复:

\n\n
npm ERR! code E405\nnpm ERR! Registry returned 405 for PUT on http://hostname/-/user/org.couchdb.user:ci\n\nnpm ERR! A complete log of this run can be found in:\nnpm ERR!     /root/.npm/_logs/2019-07-23T17_30_33_494Z-debug.log\n
Run Code Online (Sandbox Code Playgroud)\n\n

当我运行命令时,--verbose我得到另一个提示:

\n\n
npm http 405 \xe2\x86\x90 HTTP method PUT is not supported by this URL (http://hostname/-/user/org.couchdb.user:ci)\n
Run Code Online (Sandbox Code Playgroud)\n\n

为什么不让我登录?

\n

Der*_*ler 6

您忘记在注册表 URL 中提供存储库路径。

您的注册表 URL 设置为http://hostname/,这只是您的 NRM 的基本名称,它可以保存具有离散权限的多个存储库。

您需要提供存储库名称,例如http://hostname/repository/npmjs-proxy/.