簡體   English   中英

NPM 6.4.1 和 Artifactory 5.4.6 中的 `npm adduser` 身份驗證錯誤

[英]`npm adduser` authentication error in NPM 6.4.1 & Artifactory 5.4.6

我在 Artifactory 5.4.6 上設置了一個私人 NPM 存儲庫。

在 NPM 3.10.10 中,我能夠為此創建憑據,使用以下命令,從一個空的~/.npmrc

npm adduser --registry= https://artifactory.luciad.com/artifactory/api/npm/product_release_npm --scope=@luciad --always-auth

當我嘗試在NPM 6.4.1運行相同的指令,具有完全相同的憑據,對於具有exaxt相同的設置完全一樣的私人回購協議,也從開始的空~/.npmrc ,我得到以下錯誤:

npm ERR! code E404
npm ERR! 404 Registry returned 404 for PUT on https://artifactory.luciad.com/artifactory/api/npm/-/user/org.couchdb.user:jslegers
npm ERR! 404
npm ERR! 404  'org.couchdb.user:jslegers' is not in the npm registry.
npm ERR! 404 Your package name is not valid, because
npm ERR! 404  1. name can only contain URL-friendly characters
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\jslegers.LUCIAD\AppData\Roaming\npm-cache\_logs\2019-01-30T16_00_02_039Z-debug.log

當我查看日志文件時,我看到以下內容:

 6 http request → POST https://artifactory.luciad.com/artifactory/api/npm/-/v1/login
7 http 404 ← Not Found (https://artifactory.luciad.com/artifactory/api/npm/-/v1/login)
8 verbose web login not supported, trying couch
9 verbose login before first PUT { _id: 'org.couchdb.user:jslegers',
9 verbose login   name: 'jslegers',
9 verbose login   password: 'XXXXX',
9 verbose login   type: 'user',
9 verbose login   roles: [],
9 verbose login   date: '2019-01-30T16:00:02.008Z' }
10 http request → PUT https://artifactory.luciad.com/artifactory/api/npm/-/user/org.couchdb.user:jslegers
11 http 404 ← Not Found (https://artifactory.luciad.com/artifactory/api/npm/-/user/org.couchdb.user:jslegers)
12 verbose adduser before first PUT { _id: 'org.couchdb.user:jslegers',
12 verbose adduser   name: 'jslegers',
12 verbose adduser   password: 'XXXXX',
12 verbose adduser   email: 'john.slegers@hexagon.com',
12 verbose adduser   type: 'user',
12 verbose adduser   roles: [],
12 verbose adduser   date: '2019-01-30T16:00:02.024Z' }
13 http request → PUT https://artifactory.luciad.com/artifactory/api/npm/-/user/org.couchdb.user:jslegers
14 http 404 ← Not Found (https://artifactory.luciad.com/artifactory/api/npm/-/user/org.couchdb.user:jslegers)
15 verbose stack Error: Registry returned 404 for PUT on https://artifactory.luciad.com/artifactory/api/npm/-/user/org.couchdb.user:jslegers

以及為什么npm adduser在這里失敗?

如果我重新使用我用 NPM 3.10.10 創建的憑據,我可以使用 NPM 6.4.1 毫無問題地發布,所以這絕對不是 Artifactory 中的授權問題導致的。

根據發行說明,Artifactory 5.4.6 於 2017 年 8 月 7 日發布。自 2017 年 8 月 7 日以來, npm adduser的實現是否有任何更改可能會破壞與舊版本 Artifactory 的兼容性?

遇到同樣的問題:

通過以下步驟解決:


$ npm login
$ enterusername
$ enterincorrectpassword
$ enteremail

你會收到錯誤信息說無效登錄

嘗試使用有效憑據登錄,您將能夠登錄。

其他步驟很有幫助。

  1. 清除緩存:$ npm cache clear --force
  2. 刪除 .npmrc 文件中的條目:vi ~/.npmrc 刪除 .npmrc 文件中的登錄和注冊表相關數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM