纱线:无法验证第一张证书

Man*_*dan 21 yarnpkg

我正在尝试从npm迁移到Yarn.当我尝试通过yarn安装依赖项时,我收到此错误.

unable to verify the first certificate
at Error (native)
at TLSSocket.<anonymous> (_tls_wrap.js:1055:38)
at emitNone (events.js:86:13)
at TLSSocket.emit (events.js:185:7)
at TLSSocket._finishInit (_tls_wrap.js:580:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:412:38)
Run Code Online (Sandbox Code Playgroud)

同样适用于npm.尝试设置代理,没有帮助.是否有任何配置我需要更改?

cga*_*ian 41

如果无法验证证书,则可以将set strict-ssl打开为false.您应该可以通过runnning配置它

yarn config set "strict-ssl" false -g

但该命令目前无效,请参阅问题980.

作为替代方案,您可以导航到C:\ Users \\并打开.yarnrc并手动更新它,如下所示:

# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
strict-ssl false
Run Code Online (Sandbox Code Playgroud)

  • `yarn config set "strict-ssl" false -g` 对我来说效果很好。谢谢 (3认同)
  • 您可能应该提到,关闭 strict-ssl 可能会让您面临中间人攻击,除非您使用受信任的代理。至少我建议删除 -g ,以便您仅为自己设置该设置,而不是将其强制给其他可能不知道其 ssl 不再安全的用户。 (3认同)
  • “如果您没有可用的证书”——这句话是什么意思? (2认同)

tri*_*man 19

这意味着您很可能落后于使用自签名证书的公司代理.我正在使用版本v0.16.1,您可以通过向纱线配置提供公共证书来解决这个问题:

yarn config set cafile <path-to-certificate.pem>
Run Code Online (Sandbox Code Playgroud)