npm publish报错记录

本文讲述了作者在尝试通过npm发布包时遇到的403Forbidden和402PaymentRequired错误,探讨了解决方案,包括购买私有包、使用组织或用户名的@包名格式,以及正确设置包的公开权限。

403 Forbidden

按照文档中的步骤,注册登录后,准备好了库,然后执行npm publish,报了下面的错误:

Error: 403 Forbidden - PUT registry.npmjs.org/xx - You do not have permission to publish "xx". Are you logged in as the correct user?

查询资料后,发现于来世因为公开的库里面,已经有了同名的库。由于是免费的账号,所以想在npm上发包,要么换个名称,要么花钱创建私有包。还有一种方式就是在内网搭建自己的npm服务

Error:402 Payment Required

换了个名字,想起了自己建过的库,就模仿加了个@前缀的包,再次发布的时候,报了下面的错误:

Error: 402 Payment Required - PUT registry.npmjs.org/@xx/xx - You must sign up for private packages

查看文档,发现@npm/package-name这种形式的包名,是有作用域的包名形式,执行npm publish的时候默认是发布私有的包。因此,第一种方式是花钱买私有包的服务,另外一种方式就是指定参数,表示公开:

npm publish --access public

需要注意的是这种形式的包名跟npm账户有对应的关系,不能随便填写。

npm init --scope=@my-org

这种形式表示是一个组织,my-org对应是npm中的组织名

npm init --scope=@my-username

这种形式表示个人,my-username对应是npm中的用户名

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值