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

pcww981p  于 2022-11-14  发布在  其他
关注(0)|答案(2)|浏览(159)

NPM赋予create access tokens将软件包发布到NPM注册表的权限,假设您已经在“Publishing access”中将软件包设置为“Require two-factor authentication or automation tokens”(因此,我假设它隐含地需要启用2FA)。
我如何使用这个令牌来发布?我已经检查了npm publish的输出--它要求一个OTP代码,作为一个提示或一个标志,在我启用2FA之前,它再次要求我输入密码。使用固定令牌比必须打开我的验证器应用更容易。我可以禁用2FA,但让令牌工作更好。

cyvaqqii

cyvaqqii1#

对于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}

指令为here progethere verdaccio

56lgkhnf

56lgkhnf2#

npm注册表有3种不同的令牌:只读、自动化和发布。
这听起来像是您创建了一个Publish令牌。您需要创建一个Automation令牌,因为这是唯一一个绕过2FA的令牌。

相关问题