我有自己的私人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
}
但我仍然得到同样的错误。我在哪里做错了?
答案 0 :(得分:8)
在Nodejs命令提示符下运行以下命令。 一切正常。它在代理错误后面运行的bcos
yarn config set "strict-ssl" false -g
答案 1 :(得分:6)
意识到配置需要进入.yarnrc
文件。我已经设定了以下功能。
cafile null
strict-ssl false
另请注意,纱线也会从.npmrc
文件中获取配置选项。