错误:运行yarn命令时无法获取本地颁发者证书

时间:2016-10-19 06:41:34

标签: javascript yarnpkg

我有自己的私人npm注册表http://something。我安装了纱线并尝试运行以下命令。

yarn

但是它给出了以下错误。

Trace: 
  Error: unable to get local issuer certificate
      at Error (native)
      at TLSSocket.<anonymous> (_tls_wrap.js:1017:38)
      at emitNone (events.js:67:13)
      at TLSSocket.emit (events.js:166:7)
      at TLSSocket._init.ssl.onclienthello.ssl.oncertcb.TLSSocket._finishInit (_tls_wrap.js:582:8)
      at TLSWrap.ssl.onclienthello.ssl.oncertcb.ssl.onnewsession.ssl.onhandshakedone (_tls_wrap.js:424:38)

我也发现了几个github问题和解决方案。

https://github.com/yarnpkg/yarn/issues/841 https://github.com/yarnpkg/yarn/commit/b0611a6ee5220b0b1e955b271b6140640158f96c(可在0.16.0中获得)

看起来我必须在yarn配置中将strict-ssl设置为false。我无法确切地知道我该怎么做。我尝试在package.json中以下列方式提供选项但是没有工作。

1)

{
config: {
"strict-ssl": false
}
}

2)

{
"strict-ssl": false
}

但我仍然得到同样的错误。我在哪里做错了?

2 个答案:

答案 0 :(得分:8)

在Nodejs命令提示符下运行以下命令。 一切正常。它在代理错误后面运行的bcos

yarn config set "strict-ssl" false -g

答案 1 :(得分:6)

意识到配置需要进入.yarnrc文件。我已经设定了以下功能。

cafile null
strict-ssl false

另请注意,纱线也会从.npmrc文件中获取配置选项。