终极解决方案 npm ERR! Unexpected token in JSON at position 1 while parsing near

自己弄了个npm库,自从npm库开启了2FA时,每次升级就变得苦不堪言。

要么是发布时不提示输入动态口令,没法授权

要么是提示发布成功,版本与居然没变化。。。

而后,运行npm view miniprogram-to-uniapp version时,会提示:

npm ERR! Unexpected token < in JSON at position 1 while parsing near ' 

npm ERR! <!doctype html> npm ERR! <htm...' 

npm ERR! A complete log of this run can be found in: 

npm ERR! C:\Users\Administrator\AppData\Roaming\npm-cache\_logs\2020-03-13T12_28_36_438Z-debug.log

后面我发现居然运行npm的其他命令,比如npm login也会报这种错误,说明不是代码的问题,经过不断尝试,几次折磨,现在将自己尝试过的方法记录一下:

1. 将npm配置项registry修改默认:

npm config set registry http://www.npmjs.org

2. 删除node_modules目录和package-lock.json文件

3.清理npm缓存

npm cache clean --force

4. 安装npm包(可能需多次尝试)

npm i

虽然在国内速度会慢,但是,请你坚持,多次尝试,总能安装上的。

至此,修复完毕。

 

另外,也遇到有别人使用过的方法:

npm config rm proxy

npm config rm https-proxy

也可以试试吧。

 

最后,对于发布npm包,如果不需要每次都输入动态口令,可以去npmjs.com里自己npm包的settings里,将设置Require Two Factor Authentication to publish or modify settings的勾去掉。

参考资料:在https://github.com/npm/npm/issues/19072有这么一条:

if u in china ,try npm set registry https://registry.npmjs.org/ don't use taobao mirror

 

 

 

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值