当前位置: 首页 > news >正文

npm install时报错 reason: certificate has expired

在VS code中导入新项目,执行npm install时报错:

npm warn old lockfile Could not fetch metadata for @antv/g@3.4.10 FetchError: request to https://registry.npm.taobao.org/@antv%2fg failed, reason: certificate has expirednpm warn old lockfile     at ClientRequest.<anonymous> (D:\softFile\Node.js\node_modules\npm\node_modules\minipass-fetch\lib\index.js:130:14)
npm warn old lockfile     at ClientRequest.emit (node:events:519:28)
npm warn old lockfile     at _destroy (node:_http_client:880:13)
npm warn old lockfile     at onSocketNT (node:_http_client:900:5)
npm warn old lockfile     at process.processTicksAndRejections (node:internal/process/task_queues:83:21) {
npm warn old lockfile   code: 'CERT_HAS_EXPIRED',
npm warn old lockfile   errno: 'CERT_HAS_EXPIRED',
npm warn old lockfile   type: 'system'
npm warn old lockfile }

由以下命令可知npm引用了淘宝镜像:

原因:淘宝证书过期

解决办法:

方法一:清除 npm 的缓存,然后禁用 strict-ssl模式。

# 强制清除 npm 的缓存。npm 在安装包时会将下载的包缓存到本地,以便下次使用时可以直接从缓存中获取,加快安装速度。
npm cache clean --force# 禁用 npm 的 strict-ssl模式。默认情况下,npm 在下载包时会验证 SSL 证书的有效性,以确保安全性。这里禁用 SSL 严格模式,允许使用自签名或无效的 SSL 证书进行下载,此方法就会忽略淘宝证书过期问题。
npm config set strict-ssl false# 重新运行
npm install

方法二:由于在2021 年,淘宝发文称,npm 淘宝镜像已经从 registry.npm.taobao.org 切换到了 registry.npmmirror.com。旧域名也将于 2022 年 5 月 31 日停止服务, HTTPS 证书也到期了。(建议使用该方法

1)清空缓存,修改镜像

# 清空缓存
npm cache clean --force# 修改镜像(管理员运行命令行)
npm config set registry https://registry.npmmirror.com

2)删除系统用户目录下.npmrc和.yarnrc文件,以及修改.vuerc文件(存在的话,修改"useTaobaoRegistry"为true)

3)重新运行安装命令

npm install

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • PCB(印制电路板)制造涉及的常规设备
  • 阿里云DSW实例中安装并运行Neo4J
  • 万界星空科技MES系统生产计划管理的功能
  • JAVASE-医疗管理系统项目总结
  • 【力扣】最小栈
  • 【Unity C#基础】浅谈List底层逻辑
  • npm相关指令
  • 现场可重构CPLD芯片应用案例—蓝牙音箱
  • PHP 与 1688 详情 API 接口的完美对接
  • UE4-初见虚幻引擎
  • java包装类 及其缓存
  • 浏览器的缓存
  • PyCharm软件初始化配置
  • 使用 Flask 3 搭建问答平台(三):注册页面模板渲染
  • 华为OD机考题(基础API)
  • [译]CSS 居中(Center)方法大合集
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • 【译】理解JavaScript:new 关键字
  • Angular 4.x 动态创建组件
  • chrome扩展demo1-小时钟
  • iOS高仿微信项目、阴影圆角渐变色效果、卡片动画、波浪动画、路由框架等源码...
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • LintCode 31. partitionArray 数组划分
  • maya建模与骨骼动画快速实现人工鱼
  • Redux系列x:源码分析
  • Vue组件定义
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 成为一名优秀的Developer的书单
  • 从0实现一个tiny react(三)生命周期
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 排序(1):冒泡排序
  • 前端之Sass/Scss实战笔记
  • 通过git安装npm私有模块
  • 写给高年级小学生看的《Bash 指南》
  • 一、python与pycharm的安装
  • 用 Swift 编写面向协议的视图
  • 主流的CSS水平和垂直居中技术大全
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​520就是要宠粉,你的心头书我买单
  • ​LeetCode解法汇总307. 区域和检索 - 数组可修改
  • ​linux启动进程的方式
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • # Redis 入门到精通(七)-- redis 删除策略
  • # 安徽锐锋科技IDMS系统简介
  • #Ubuntu(修改root信息)
  • (1)(1.9) MSP (version 4.2)
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (C#)Windows Shell 外壳编程系列9 - QueryInfo 扩展提示
  • (Java入门)抽象类,接口,内部类
  • (WSI分类)WSI分类文献小综述 2024
  • (每日一问)基础知识:堆与栈的区别
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .gitignore文件—git忽略文件
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .NET 跨平台图形库 SkiaSharp 基础应用