npm 安装包遇到问题的常用脚本(RequestError: socket hang up)

前言

最近在给一个基于 Electron 的开源项目做贡献,需要去安装一些 npm 库,由于众所周知的原因,经常会出现报错:

复制代码
npm ERR! path D:\Projects\project\node_modules\electron
npm ERR! command failed
npm ERR! command C:\Windows\system32\cmd.exe /d /s /c node install.js
npm ERR! RequestError: socket hang up
npm ERR!     at ClientRequest.<anonymous> (D:\Projects\project\node_modules\@electron\get\node_modules\got\dist\source\core\index.js:970:111)
npm ERR!     at Object.onceWrapper (node:events:632:26)
npm ERR!     at ClientRequest.emit (node:events:529:35)
npm ERR!     at origin.emit (D:\Projects\project\node_modules\@szmarczak\http-timer\dist\source\index.js:43:20)
npm ERR!     at TLSSocket.socketOnEnd (node:_http_client:525:9)
npm ERR!     at TLSSocket.emit (node:events:529:35)
npm ERR!     at endReadableNT (node:internal/streams/readable:1368:12)
npm ERR!     at connResetException (node:internal/errors:720:14)
npm ERR!     at TLSSocket.socketOnEnd (node:_http_client:525:23)
npm ERR!     at TLSSocket.emit (node:events:529:35)
npm ERR!     at endReadableNT (node:internal/streams/readable:1368:12)
npm ERR!     at process.processTicksAndRejections (node:internal/process/task_queues:82:21)

npm ERR! A complete log of this run can be found in: C:\Users\xxx\AppData\Local\npm-cache\_logs\2023-12-17T04_00_17_970Z-debug-0.log

这是因为网络连接的问题而无法安装,尝试了国内镜像但是也会出一些奇怪的问题。下面假设你有一个合规的代理。

正文

复制代码
npm config set proxy=http://127.0.0.1:7891
npm config set https-proxy=http://127.0.0.1:7891
npm install vue  # 安装需要的包

但是有些情况下还是会遇到神奇的问题。可以尝试下面的命令更新 npm 解决。

bash 复制代码
npm install npm -

PS:从参考来源那里拷贝的代码在命令尾部包括了一个`-`。我在测试中使用这个带 `-` 的命令,并且后面顺利安装了。但是目前并不明确这个 `-` 的意义,简单浏览了官方文档没有看到类似的写法。(LLM表示这个可能就是表示这个命令结束用的。也有LLM说这个代表 @latest,但是同样没有在文档中找到相关描述,不排除幻觉可能,但是这个事情不重要,蹲大神赐教了)

Reference

解决各种 npm install 报错问题_coc.nvim 配置 error getaddrinfo eai_again re-CSDN博客

相关推荐
雨季mo浅忆6 小时前
记录Node.js安全漏洞及其内置Brotli解码器问题
node.js·安全性测试
tommyjiatong6 小时前
资安底座连环雷:从 PHP2Shell 到 Node2Shell
node.js·php
SEO_juper9 小时前
Bash 交叉验证 robots.txt 和 sitemap:两个文件自相矛盾,页面永远收录不了
开发语言·python·node.js·json·bash
SEO_juper10 小时前
Go 站点地图生成器:从首页爬全站,一键生成 sitemap.xml
xml·开发语言·人工智能·golang·node.js·seo·外贸独立站
Moshow郑锴1 天前
Ansible 批量部署 Node.js 服务:ZIP 直解与共享目录分发两种方案对比
node.js·ansible
少年的范儿1 天前
Windows 安装 Node.js 教程:nvm 版本管理 + pnpm 安装配置
windows·npm·node.js
peach1 天前
同样是装依赖,为什么 npm 长成 node_modules,Maven 长成 .m2
npm·node.js·maven
FungLeo1 天前
成为全栈·Go 后端篇·重写之前先锁基线:契约、Node 版本与行为清单
golang·node.js·go·openapi·契约测试·成为全栈
FungLeo2 天前
成为全栈·Go 后端篇·契约一致性与差分测试:两套实现如何互相校验
golang·node.js·go·合约测试·差分测试·成为全栈·api兼容
月夏2 天前
前端第一次接自己的后端:mock 切真接口踩了 2 个坑,组件只改了一行 import
前端·后端·node.js