官方镜像源:https://registry.npmjs.org
淘宝镜像源:https://registry.npmmirror.com
一. 环境问题:
查看镜像源是否是官方镜像源
npm config get registry
如果不是官方镜像源就需要切换镜像源
npm config set registry https://registry.npmjs.org/
配置好后就可以进行npm login了
二. 登录问题:
遇到这种情况,目前我碰到过的原因有三种
1. 查看镜像源是否是官方的,因为有时候在网上搜到的镜像源是cnpmjs的,所以一定要仔细看清楚,是不是 https://registry.npmjs.org/,而不是https://registry.cnpmjs.org/
2.查看node是否是最新版本,因为版本低的话可能会不支持,目前我使用的是21.1.0的node版本。
3.查看网络是否流畅,可以切换网络或者多试几次
三.镜像源使用http还是htts问题:
使用 http://registry.npmjs.org/可以在终端输入用户名密码,但是输入完密码回车后就会报错
如果是这样的错,就还是换成https://registry.npmjs.org/吧,如果报错就多试几次,直到出现跳转,让你输入验证码的时候就算成功了。
四.npm publish问题:
正常情况下,以上都成功并且不报错的话,那么发布基本就没什么问题了
如果npm publish发布的时候报这种错误,可以多发布几次,这有可能是网络问题。
另一种就是查看你的package.json中的包名,设置一个自己的,最好不要太简单,和别人的包名一样。如果使用的包名和别人重复了,就会提示已经变为私有包的错误,