首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >安装纱线时执行请求时出错

安装纱线时执行请求时出错
EN

Stack Overflow用户
提问于 2022-01-04 14:36:17
回答 3查看 5K关注 0票数 5

当我试图安装纱线时,我得到了以下输出:

代码语言:javascript
复制
Internal Error: Error when performing the request
    at ClientRequest.<anonymous> (C:\Program Files\nodejs\node_modules\corepack\dist\corepack.js:3937:20)
    at ClientRequest.emit (node:events:390:28)
    at TLSSocket.socketErrorListener (node:_http_client:447:9)
    at TLSSocket.emit (node:events:390:28)
    at emitErrorNT (node:internal/streams/destroy:157:8)
    at emitErrorCloseNT (node:internal/streams/destroy:122:3)
    at processTicksAndRejections (node:internal/process/task_queues:83:21) 
EN

回答 3

Stack Overflow用户

发布于 2022-06-30 00:07:44

TL;博士

file

  • 创建一个自定义CA证书文件(在本例中是c:\temp\combo.ca.cer),该文件包含企业网络安全解决方案正在向Node.js显示的所有证书的BASE64 64编码的DER,当Node.js发出HTTPS请求时,

NODE_EXTRA_CA_CERTS=c:\temp\combo.ca.cer

  • corepack
  • set使
  • 纱线组版本稳定

根源分析

我在"corepack.js:3937:20“中有”内部错误:执行请求时的错误“,就像在座的每个人一样,所以我查看了第3937行,发现这是一个普通的https.get调用。我在corepack.js中进行了一些额外的调试,以查看正在访问的是什么,并发现它未能达到"https://registry.npmjs.com/pnpm"“。

我在我的网络浏览器中导航到"https://registry.npmjs.com/pnpm“,发现我的公司环境让它没有错误地加载。因此,我点燃了Node JS,发布了一份报告,看看会发生什么:

代码语言:javascript
复制
https.get("https://registry.npmjs.com/pnpm", {}, res => console.log(res));

我收到了一个“无法获得本地颁发者证书”的错误。在我的公司环境中,有一个安全解决方案,它将自己的自签名证书注入到来自任何出站https请求的响应中。这对我来说意味着,我需要指示发出https请求(例如Node.js和curl)的任何东西使用自定义CA证书文件。

为了让corepack工作,我首先将一个定制的CA证书文件硬编码到corepack.js中,虽然它很难看,但它确实起了作用。进一步了解一下,我发现了由NODE_EXTRA_CA_CERTS使用的Node.js环境变量选项,因此在管理员特权的cmd会话中也成功地尝试了以下操作(还删除了我在前面所做的corepack.js攻击):

代码语言:javascript
复制
set NODE_EXTRA_CA_CERTS=c:\temp\combo.ca.cer
corepack enable
yarn set version stable

combo.ca.cer是通过导航到https://registry.npmjs.com/pnpm并将所有CA证书(根和任何中间CA证书)导出到文本文件并将所有CA证书文件的内容复制到一个名为combo.ca.cer的文本文件中构建的。我使用来自https://stackoverflow.com/a/44726189的建议来创建我的自定义CA证书文件。

票数 1
EN

Stack Overflow用户

发布于 2022-02-24 16:20:32

作为工作计算机初始设置的一部分,我也得到了同样的错误。即使是干净的纱线(空文件夹中的yarn init -2)也会导致错误。

关闭我的VPN使纱线如预期的工作。

谷歌的错误导致我到这个页面,这让我怀疑VPN。https://github.com/nodejs/corepack/issues/67

票数 0
EN

Stack Overflow用户

发布于 2022-01-06 11:30:51

我也遇到了同样的问题,对我来说,这是通过运行yarn set version stable来解决的。

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70580425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档