我会在我的Gitlab项目中加入我的第一个npm publish。该项目是私有的,因此我为包注册表生成了一个具有read & write权限的deploy令牌。
我在本地创建了一个.npmrc文件,并使用了以下几行代码:
@laszlo-bottlik:registry=https://gitlab.com/api/v4/projects/28303714/packages/npm/
//gitlab.com/api/v4/packages/npm/:_authToken='<deploy-name>:<deploy-password>'
//gitlab.com/api/v4/projects/28303714/packages/npm/:_authToken='<deploy-name>:<deploy-password>'包json中的名称值为@laszlo-bottlik/playground
项目的Url为https://gitlab.com/laszlo-bottlik/playground
当我在终端中运行npm publish命令时,我得到401错误:
HttpErrorGeneral: 401 Unauthorized - PUT https://gitlab.com/api/v4/projects/28303714/packages/npm/@laszlo-bottlik%2fplayground任何类型的帮助都可以引导我找到解决方案。
我应该在我的本地环境中检查什么?
我应该在Gitlab下的项目设置中检查什么?
发布于 2021-09-26 20:31:38
您使用部署令牌而不是作业令牌有什么原因吗?无论哪种方式,看起来您可能在上面的authToken参数中有一个额外的变量-您的示例代码中有<deploy-name>:<deploy-password>,但GitLab的代码只显示了一个auth_token参数(reference):
npm config set -- '//gitlab.example.com/api/v4/projects/<your_project_id>/packages/npm/:_authToken' "<your_token>"https://stackoverflow.com/questions/69336223
复制相似问题