今天在做vue项目,切换私服nexus,npm login时,遇到了下面的问题error Unable to authenticate, need: BASIC realm="Sonatype Nexus Repository Manager"

我在网上搜索了一下,好像在登录和注册,还有发布的时候,都可能遇见这个问题.问题原因也很明确,就是权限验证 没通过.下面是我把网上的解决办法整合了一下.

第一种:就是信息输入不正确.仔细比对你输入的用户,密码,邮箱是否正确(不要使用网页记住的密码登录,因为很可能已经被改过了。)

第二种:如果是注册,有可能用户名已经被使用了

第三种: 清除缓存:npm cache clear --force
上面几种方法,我都试过,不过没有解决我的问题,下面就是我解决问题的方法

第四种:在私服上面添加权限
(1)浏览器登陆私服
(2)设置–Security–Realms–把npm Bearer Token Realm添加到Active

第五种.package-lock.json中限定的下载地址和你使用的地址冲突

查看使用的地址:nrm Is看看和package-lock.json中的地址是否一致,这是我最新遇见的的问题,当我访问淘宝镜像和https://registry.npmjs.org/的时候,也报这个错。
解决方法:删除package-lock.json即可