向 npm login 命令行提供凭据

AVa*_*arf 17 shell terminal command-line npm npm-login

我需要npm login在脚本中传递凭据有没有办法提供类似于 git 凭据的凭据?

git clone https://username:password@github.com
Run Code Online (Sandbox Code Playgroud)

AVa*_*arf 11

几个月前我找到了一个 npm 包,但我忘了更新这个问题。

只需安装npm-cli-login并在终端/脚本中使用它,如下所示:

npm-cli-login -u testUser -p testPass -e test@example.com
Run Code Online (Sandbox Code Playgroud)

我发现了另外两种无需使用外部命令即可传递凭据的方法,但请注意,这些命令在 Jenkins 等环境中可能不起作用。

命令:

npm-cli-login -u testUser -p testPass -e test@example.com
Run Code Online (Sandbox Code Playgroud)

  • 我收到“用户名:myusername 密码:npm ERR!” cb() 从未调用!` 不确定这是此方法的问题还是我的 npm 安装的本地问题。 (9认同)
  • 同样的问题,不同的错误消息:`密码:npm ERR!退出处理程序从未调用过!` (6认同)
  • 毫无意义的反对票还在继续。在否决之前,您至少能告诉我我的答案有什么问题吗?毫无理由地投反对票是愚蠢的。 (3认同)

Nat*_*han 10

看一下.npmrc 文件,你可以使用这个文件来设置 npm 配置变量,比如凭据、注册表位置等...这个文件位于你的HOME目录中。这是一个.npmrc供参考的示例文件:

~/.npmrc

registry=https://registry.npmjs.com/
_auth="<token>"
email=<email>
always-auth=true
Run Code Online (Sandbox Code Playgroud)

将您的电子邮件和 _auth令牌适当地替换为您的凭据。您的脚本将使用.npmrc文件中设置的这些全局配置。

希望这有帮助!