npm 错误!代码 E401 npm 错误!密码错误或丢失
Posted
技术标签:
【中文标题】npm 错误!代码 E401 npm 错误!密码错误或丢失【英文标题】:npm ERR! code E401 npm ERR! Incorrect or missing password 【发布时间】:2021-04-15 19:06:35 【问题描述】:我的 Node 版本是 10.15.0,NPM 版本是 6.8.4 升级后运行 npm install npm 到 14.16.0 和 npm 到 7.6.2
收到此错误 -
npm ERR! code E401
npm ERR! Incorrect or missing password.
npm ERR! If you were trying to login, change your password, create an
npm ERR! authentication token or enable two-factor authentication then
npm ERR! that means you likely typed your password in incorrectly.
npm ERR! Please try again, or recover your password at:
npm ERR! https://www.npmjs.com/forgot
npm ERR!
npm ERR! If you were doing some other operation then your saved credentials are
npm ERR! probably out of date. To correct this please try logging in again with:
npm ERR! npm login
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/xyz/.npm/_logs/2021-04-15T18_55_07_993Z-debug.log
【问题讨论】:
【参考方案1】:在升级节点版本后,在运行命令“npm install”之前尝试删除 package-lock.json 文件,如果你还没有这样做的话。
如果这不起作用,请尝试删除 $HOME 目录中的 .npmrc 文件,如本文所述。
NPM ERR Code E401: Unable to authenticate, need: Bearer authorization
【讨论】:
是的,我完全错过了。删除 package-lock.json 对我有用。谢谢! 查看this SO answer 了解您可能不想删除package-lock.json
的潜在原因。【参考方案2】:
在C/Users/your-windows-username/
目录下
删除以下文件:
.cache
.package
.package-lock
.npmrc
之后,转到您的项目并在终端中运行以下命令
npm i
【讨论】:
【参考方案3】:Node 16.x.x 也有同样的问题。 我已经完成了该主题以及此处提到的那些主题的所有工作,但没有任何帮助!
唯一帮助我登录的是我已从此处删除 Node 16.x.x 并安装了 Node 14.8.1 - https://nodejs.org/en/download/releases/
【讨论】:
【参考方案4】:在运行npm run dev
之后,我最近在各种项目中都遇到了同样的错误:
npm ERR! code E401
npm ERR! Incorrect or missing password.
为我解决的问题是删除我的 package-lock.json
文件(以及任何可能与 npm 产生冲突的 yarn.lock
文件)和 node_modules
目录。然后我用npm update
更新了我的npm 包。 (注意:在更新任何 npm 包之前,您可能应该创建一个新的 Git 分支并在该新分支中运行 npm update
。如果您在更新后遇到更大的问题,那么您可以恢复到之前的分支。)
在我的包更新后,运行我的 npm 启动脚本(例如npm run dev
)再次运行而没有错误。
注意:您可以运行 npm outdated
来查看您的哪些 npm 包可以使用更新。
【讨论】:
【参考方案5】:我在.npmrc
中配置的公司注册表出现了同样的错误
registry=https:<company-registry-url>
节点版本:16.10.0 NPM 版本:7.24.0
解决方案:
执行npm login
$ npm login
npm notice Log in on https:<registry-url>
Username: xxxx
Password:
Email: (this IS public) (xxxx)
Logged in as xxx on https:<registry-url>.
在.npmrc
更新后
//<registry-url>/:_authToken=xxxxx
【讨论】:
【参考方案6】:这可能是由于 npm 上的错误而发生的。 npm v7 发生在我身上。切换到 v6 并且可以正常工作。
更多内容:https://github.com/npm/cli/pull/2153
【讨论】:
【参考方案7】:重新安装最新的node.js。这解决了我的问题。
【讨论】:
以上是关于npm 错误!代码 E401 npm 错误!密码错误或丢失的主要内容,如果未能解决你的问题,请参考以下文章
如何修复节点服务器错误,npm ERR!代码 ELIFECYCLE npm 错误!错误1?
npm 错误!代码 ENOENT,npm 错误!错误号 34
npm 错误 npm 错误!代码 ETARGET npm 错误! notarget 没有为 express@undefined4.16.3 找到匹配的版本