如何使用 API 密钥将包发布到 npm?

问题描述 投票:0回答:3

NPM 能够创建访问令牌,并有权将包发布到 NPM 注册表,假设您已将包设置设置为“发布访问”中的“需要双因素身份验证或自动化令牌”(等等我认为它隐式地需要启用 2FA)。

如何使用此令牌进行发布?我检查了

npm publish
的输出——它要求输入 OTP 代码,作为提示或标志,在我启用 2FA 之前,它再次要求我输入密码。使用固定令牌比启动我的身份验证器应用程序更容易。我可以禁用 2FA,但让令牌正常工作更好。

npm npm-publish
3个回答
4
投票

npm 注册表有 3 种不同类型的令牌:只读、自动化和发布。

听起来您创建了一个发布令牌。您需要创建一个自动化令牌,因为这是唯一绕过 2FA 的令牌。


4
投票

对于 verdaccio 或类似的,你可以使用这个:

> npm config set registry http://verdaccio/npm/

# then create and update local .npmrc file:
> npm config set _authToken=%YOUR_ACCES_TOKEN%

# and publish pointing to your registry
> npm publish --registry http://verdaccio/npm/

对于proget:

[~]$ npm config set registry http://proget/npm/private-npm

[~]$ npm config set always-auth true
[~]$ npm config set _auth {ENCODEDAPIKEY}
[~]$ npm config set email {email address}

# then as usual
[~]$npm publish --registry {YOUR_REGISTRY}

说明是这里 proget这里 verdaccio


0
投票

请尝试以下命令:

导出NPM_PUBLISH_TOKEN=1 纱线安装

© www.soinside.com 2019 - 2024. All rights reserved.