使用yarn/npm安装插件(涉及electron),总是报错证书错误或者ssl解析错误

同学们可以私信我加入学习群!


正文开始

  • 前言
  • 一、问题描述
  • 二、解决措施
  • 总结


前言

最近electron更新到了30大版本,里面更新的一个重大变化是主进程增加了 WebContentsView 和 BaseWindow,对窗口的控制会更加丝滑。

正好最近在做把文章或者视频一键发布到各自媒体平台的工具,所以决定把BrowserWindow的实现改为BaseWindow,当然如果查看源码会发现,其实两者是继承关系,BrowserWindow作为封装后的API,还是更简便的。

这次api更新体验纯粹是从技术角度的尝鲜,如果在正式项目中,已经用BrowserWindow实现了窗口功能,其实是没必要改用新的API的。

在家里下载更新写demo,一切都很顺利,但是在单位拉取新代码后,yarn install更新资源一直各种报错。最终定位为electron新版本更新的问题。


一、问题描述

1.报的第一个错:

Output: RequestError: unable to verify the first certificate at ClientRequest.<anonymous> (G:\c-private\lize-tools-pc\node_modules\got\dist\source\core\index.js:970:111) at Object.onceWrapper (node:events:634:26) at ClientRequest.emit (node:events:531:35) at origin.emit (G:\c-private\lize-tools-pc\node_modules\@szmarczak\http-timer\dist\source\index.js:43:20) at TLSSocket.socketErrorListener (node:_http_client:500:9) at TLSSocket.emit (node:events:519:28) at emitErrorNT (node:internal/streams/destroy:169:8) at emitErrorCloseNT (node:internal/streams/destroy:128:3) at process.processTicksAndRejections (node:internal/process/task_queues:82:21) at TLSSocket.onConnectSecure (node:_tls_wrap:1674:34)
yarn install新版本的electron,一直在报这个错,表面看应该是证书的问题,但是我在家是更新成功的,所以证书应该是没问题。

证书是人家官方服务器上部署的,我们也做不了什么。只能采取一些列操作:禁用证书验证、清除yarn/npm缓存、更新yarn/npm版本等等。都无效

2.然后改用npm下载,报的第二个错:

at ClientRequest.<anonymous> (G:\c-private\lize-tools-pc\node_modules\got\dist\source\core\index.js:970:111) 报错 Hostname/IP does not match certificate's altnames: Host: npm.taobao.org. is not in the cert's altnames: DNS:*.tbcdn.cn, DNS:*.taobao.com, DNS:*.alicdn.com, DNS:*.cmos.greencompute.org, DNS:cmos.greencompute.org, DNS:m. intl.taobao.com, DNS:*.mobgslb.tbcache.com, DNS:*.alikunlun.com, DNS:alikunlun.com, DNS:*.django.t.taobao.com, DNS:alicdn.com, DNS:*.tbcache.com, DNS:*.tmall.com, DNS:*.1688.com, DNS:*.3c.tmall.com, DNS:*.alibaba.com, DNS:*.aliexpre ss.com, DNS:*.aliqin.tmall.com, DNS:*.alitrip.com, DNS:*.aliyun.com, DNS:*.cainiao.com, DNS:*.cainiao.com.cn, DNS:*.chi.taobao.com, DNS:*.chi.tmall.com, DNS:*.china.taobao.com, DNS:*.dingtalk.com, DNS:*.etao.com, DNS:*.feizhu.cn, DN S:*.feizhu.com, DNS:*.fliggy.com, DNS:*.fliggy.hk, DNS:*.food.tmall.com, DNS:*.jia.taobao.com, DNS:*.jia.tmall.com, DNS:*.ju.taobao.com, DNS:*.juhuasuan.com, DNS:*.lw.aliimg.com, DNS:*.m.1688.com, DNS:*.m.alibaba.com, DNS:*.m.alitri p.com, DNS:*.m.cainiao.com, DNS:*.m.etao.com, DNS:*.m.taobao.com, DNS:*.m.taopiaopiao.com, DNS:*.m.tmall.com, DNS:*.m.tmall.hk, DNS:*.mei.com, DNS:*.taopiaopiao.com, DNS:*.tmall.hk, DNS:*.trip.taobao.com, DNS:*.xiami.com, DNS:1688.c om, DNS:alibaba.com, DNS:aliexpress.com, DNS:alitrip.com, DNS:aliyun.com, DNS:cainiao.com, DNS:cainiao.com.cn, DNS:dingtalk.com, DNS:etao.com, DNS:feizhu.cn, DNS:feizhu.com, DNS:fliggy.com, DNS:fliggy.hk, DNS:juhuasuan.com, DNS:mei. com, DNS:taobao.com, DNS:taopiaopiao.com, DNS:tmall.hk, DNS:xiami.com, DNS:tmall.com, DNS:*.cloudvideocdn.taobao.com, DNS:cloudvideocdn.taobao.com, DNS:tbcdn.cn

dns解析又出问题,这肯定不是普通的证书问题了。正常情况,dns解析是不可能出问题的。

3.检查yarn配置

查阅资料后发现,淘宝曾经换过镜像源。

旧镜像地址:http://registry.npm.taobao.org 早就弃用,现在都是新的镜像地址:https://registry.npmmirror.com。我怀疑我的镜像地址有问题,所以就检查了一下自己的配置列表。

yarn config list

在这里插入图片描述
可以看到有很多旧镜像相关的参数

二、解决措施

  1. 删除和旧镜像相关的参数
npm config delete home 
npm config delete electron_mirror
npm config delete disturlyarn config delete sass-binary-site

但是我们把所有的删掉后,虽然不报ssl和dns解析的错误了,会报electron更新失败的错误:
error G:\c-private\lize-tools-pc\node_modules\electron: Command failed. Exit code: 1 Command: node install.js Arguments: Directory: G:\c-private\lize-tools-pc\node_modules\electron Output: RequestError: read ECONNRESET at ClientRequest.<anonymous> (G:\c-private\lize-tools-pc\node_modules\got\dist\source\core\index.js:970:111) at Object.onceWrapper (node:events:634:26) at ClientRequest.emit (node:events:531:35) at origin.emit (G:\c-private\lize-tools-pc\node_modules\@szmarczak\http-timer\dist\source\index.js:43:20) at TLSSocket.socketErrorListener (node:_http_client:500:9) at TLSSocket.emit (node:events:519:28) at emitErrorNT (node:internal/streams/destroy:169:8)
在这里插入图片描述
electron官方镜像有名的慢,所以我们要为yarn重新以新的淘宝镜像地址,设置参数electron_mirror:

yarn config set electron_mirror https://registry.npmmirror.com/electron/

设置后,还是会报错RequestError: unable to verify the first certificate,说明命令yarn config set strict-ssl false并没有生效:
在这里插入图片描述
没办法只能按照网上说的,通过环境变量临时禁用SSL验证:

set NODE_TLS_REJECT_UNAUTHORIZED=0

最终又遇到点小问题:
yarn install报错error G:\c-private\lize-tools-pc\node_modules\electron: Command failed. Exit code: 1 Command: node install.js Arguments: Directory: G:\c-private\lize-tools-pc\node_modules\electron Output: HTTPError: Response code 404 (Not Found)
我对electron真的无语了,淘宝镜像官网明明已经有30.0.4版本了,几个小时前更新的,但死活下载不了,不纠结了,昨晚下载过30.0.3,确定是能用的,所以在package.json里,禁止electron小版本提升:

 "electron": "^30.0.3"改为:"electron": "30.0.3"

然后再更新,一切成功。


总结

获取资源,查看代码示例,或者联系我:

https://lizetoolbox.top:8080/#/qrCode_contact

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/700180.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024-简单点-ultralytics库解析-data模块

data模块 overview布局\_\_init__.pyfrom .base import BaseDataset\_\_all__ annotator.pyaugment.pyclass BaseTransformclass Composeclass BaseMixTransformclass Mosaic静态方法更新label class MixUpRandomPerspectiveclass RandomHSV overview布局 从上往下解析 __init…

29、Qt使用上下文菜单(右键菜单)

说明&#xff1a;使用四种方式实现鼠标右击界面&#xff0c;显示出菜单&#xff0c;菜单上有两个动作&#xff0c;选择两个动作&#xff0c;分别打印“111”和“222”。 界面样式如下&#xff1a; 一、方法1&#xff1a;重写鼠标事件mousePressEvent .h中的代码如下&#xff…

C++——超简单登录项目

程序入口文件 #include <QtWidgets/QApplication> // 包含登录页面头文件 #include "DlgLogin.h"int main(int argc, char *argv[]) {QApplication a(argc, argv);// 程序入口// 调页面起来//DlgMain w;//w.show();// 换成登录页面DlgLogin w;w.show();return…

大数据可视化实验(四):Excel数据可视化

目录 一、实验目的... 1 二、实验环境... 1 三、实验内容... 1 1&#xff09;excel函数应用.. 1 2&#xff09;数据透视图绘制... 3 四、总结与心得体会... 5 一、实验目的 1&#xff09;掌握函数和公式的原理 2&#xff09;掌握在单元格或编辑栏中直接输入带函数的公式…

Weblogic未授权远程代码执行漏洞 (CVE-2023-21839)

1 漏洞概述 CVE-2023-21839是一个针对Oracle WebLogic Server的远程代码执行漏洞。WebLogic是美国Oracle公司出品的一个Java应用服务器&#xff0c;用于本地和云端开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用。该漏洞源于WebLogic IIOP/T3协议存在的缺陷&…

ATA-4315高压功率放大器在高频理疗仪驱动中的应用

现代社会&#xff0c;面对生活压力、工作压力&#xff0c;再加上不良的生活习惯&#xff0c;难免身体会出现这样或那样的问题&#xff0c;随着科技的发展&#xff0c;我们除了来到医院进行具体的治疗&#xff0c;一些可以用来辅助医生进行治疗的仪器设备也越来越多的应用到了临…

JSON在线解析及格式化验证 - JSON.cn网站

JSON在线解析及格式化验证 - JSON.cn https://www.json.cn/

5月14(信息差)

&#x1f30d;字节携港大南大升级 LLaVA-NeXT&#xff1a;借 LLaMA-3 和 Qwen-1.5 脱胎换骨&#xff0c;轻松追平 GPT-4V Demo 链接&#xff1a;https://llava-next.lmms-lab.com/ &#x1f384;阿里巴巴开源的15个顶级Java项目 ✨ 欧洲在线订餐服务Takeaway.com&#xff1a…

Token 计费与计算、tiktoken介绍

Token怎么计算的&#xff1f; 每个模型都具有不同的功能和价格。价格是按照每1000个 Token 计算的。您可以将Token视为单词的组成部分&#xff0c;其中1000个Token 大约相当于750个单词。(这段文字包含35个Token) 可以看到35个颜色块 每个块都有ID 英文、中文 都会有单独的一个…

xFormers

文章目录 一、关于 xFormers二、安装 xFormers三、基准测试&#xff08;可选&#xff09;测试安装 四、使用 xFormers1、Transformers 关键概念2、Repo 地图注意力机制Feed forward mechanismsPositional embeddingResidual pathsInitializations 3、主要特征4、安装故障排除 一…

使用Docker创建verdaccio私服

verdaccio官网 1.Docker安装 这边以Ubuntu安装为例Ubuntu 安装Docker​&#xff0c;具体安装方式请根据自己电脑自行搜索。 2.下载verdaccio docker pull verdaccio/verdaccio3.运行verdaccio 运行容器&#xff1a; docker run -it -d --name verdaccio -p 4873:4873 ver…

‍♂️垃圾收集算法必看!学习指数满天星!!!

&#x1f435;看完这篇文章&#xff0c;希望你有点收获&#x1f697; 注意&#xff1a;看之前你需要对JVM有点了解。。。 首先&#xff0c;垃圾回收算法主要分有三种: 标记-清除算法 见名知意&#xff0c;标记-清除&#xff08;Mark-Sweep&#xff09;算法分为两个阶段&#…