npm install安装失败unable to authenticate, need: basic realm=“sonatype nexus repository manager“-爱代码爱编程
本地Nexus私服已配置账号密码认证,并创建专用仓库账号,通过网页端可以正常访问。在命令行中执行 npm login 成功后,使用 npm install 安装依赖报 Unable to authenticate, need: BASIC realm="Sonatype Nexus Repository Manager"。经过仔细研究,发现是 realms 配置原因。
目录
运行环境:
- Windows-7-Ultimate-x64、Windows-10-BusinessEditions-21h2-x64
- sonatype-nexus-3.24.0
- Node.js-16.17.0
1、背景
IT Developer 的终极,至少要掌握前端、后端、数据库等必备软件的基础知识点,并可以独立搭建开发环境、运行环境。本文将使用Sonatype Nexus搭建 npm私服的一次尝试,并把遇到的问题整理。
1.1、npm login登录成功
npm login
登录成功日志:
npm WARN adduser `adduser` will be split into `login` and `register` in a future version. `adduser` will become an alias of `register`. `login` (currently an alias) will become its own command.
npm notice Log in on http://私服IP:私服端口/repository/npm-repos/
Username: 专用账号
Password: 账号密码
Email: (this IS public) () 绑定邮箱
Logged in as h5-developer on http://私服IP:私服端/repository/npm-repos/.
1.2、npm install报认证失败
npm install
安装失败日志:
npm ERR! code E401
npm ERR! Unable to authenticate, need: BASIC realm="Sonatype Nexus Repository Manager"
尝试查找一些博文,说是要删除 .npmrc 文件中的 _authToken 行配置,经过实测不行!
1.3、查看Node.js版本信息
npm version
2、修改Sonatype Nexus Realms配置
结合错误信息 Unable to authenticate, need: BASIC realm,并查阅各方资料,将范围缩小到 Sonatype Nexus 的 Realms配置。
2.1、添加Realms
使用 admin 用户登录,在菜单 系统设置 >> Security >> Realms 添加可用领域 npm Beaner Token Realm,保存。
2.2、验证配置是否生效
再次打开命令终端,执行 npm install ,可以看到成功下载。
3、实践总结
同一个报错,可能有种原因引起,本文遇到的 Realms 授权配置原因引起,在此做记录,供有需要码友参考。
附录: