尝鲜Electron29.0.1翻车记录,淘宝源不完全背锅

背景:

2024年2月21日,最新的Electron v29.0.1长期支持发布。本着追求更新、更快、更强的原则果断更新,计划5分钟内解决战斗,然而一直报RequestError: certificate has expired的错误。再三确认淘宝源更换为最新地址!!!

pnpm update //修改package.json "electron": "^29.0.1",

pnpm install electron@v29.0.1

甚至大哥我安装 robotjs 模块,你Electron报啥子错,还是 v28.2.4版!都报一样的 RequestError: certificate has expired(请求错误:证书已过期)

〇、一击必中

🫠来自采坑后的自信。
问题描述 确认淘宝源更换为最新地址,同样尝试了清空pnpm缓存、清除代理、更换镜像、跳过SSL验证,仍然是RequestError: certificate has expired...

js 复制代码
//配置最新的淘宝镜像源 
pnpm config set registry https://registry.npmmirror.com

原因 Electron使用了自定义镜像,当使用pnpm、npm、cpnm切换npm镜像源时,ELECTRON_MIRROR的值并没有被修改,例如pnpm 使用pnpm config list查看。

建议 例如淘宝镜像源执行以下两条语句,单独为Electron执行一次配置electron_mirror

多执行 pnpm config list 查看是否成功。

js 复制代码
//配置 单独为Electron执行一次配置`electron_mirror`
pnpm config set electron_mirror https://registry.npmmirror.com/-/binary/electron/

一、翻车收获

1.安装其他模块时,例如pnpm install robotjs时,为啥是electron证书报错

在底层, Electron 的 JavaScript API 绑定了包含默认实现的二进制文件。 每次当你从 npm 注册表安装 electron 时,默认情况下都会在 postinstall 步骤中下载该二进制文件。

你可以设置 ELECTRON_SKIP_BINARY_DOWNLOAD 环境变量为1来阻止二进制文件被下载。 例如,在运行模拟 electron 模块的单元测试时,此功能在连续集成环境中很有用。

下图临时在在当前 CMD 会话中设置环境变量。仅在当前命令行窗口有效,关闭窗口后环境变量失效。

长期设置需要 配置window系统环境变量。

2.pnpm配置环境变量,在修改什么文件

pnpm config set registry registry.npmmirror.com 我这里是 C:\Users\25051.npmrc 被修改,可以观察到修改时间的变化

3.pnpm常见命令

查看pnpm安装位置 pnpm root -g

其他pnpm常见命令 pnpm 的常见命令,全局命令通常加上-g,例如:

全局安装模块pnpm install -g <模块>

1.安装

shell 复制代码
pnpm install <模块> // 简写为 pnpm i
pnpm install <模块>@<version> //特定版本 pnpm install electron@v29.0.1

2.卸载

shell 复制代码
pnpm uninstall <模块> //简写为 pnpm rm <模块>

**3.更新**
```shell pnpm update //根据package.json更新,简写为 pnpm up pnpm update --latest //更新至最新版本 pnpm update <模块> // 更新指定<模块>至最新 ```

4.运行

shell 复制代码
pnpm run <script-name> // 运行 package.json 中的脚本
pnpm <script-name>   //直接运行脚本别名

pnpm run start

pnpm start //以上的简写 pnpm 百万牛牛 //在package.json中配置的别名

4.常见的npm镜像源

常用的 npm 源主要包括以下几个:

  1. 官方源

  2. 国内镜像源

  3. 其他公共镜像源

在国内由于网络问题,使用国内的镜像源可以显著提高下载速度和稳定性。需要注意的是,各个镜像站都承诺定期同步官方源的数据,但由于同步策略和延迟的原因,可能存在一些新版包在官方源上线后一段时间才在镜像源上可用的情况。此外,对于私有模块,仍然需要直接连接到官方源才能获取和发布。

二、参考

1.CSDN。Electron项目使用yarn/npm/cnpm时报certificate has expired...的问题

2.官方.Electron安装指导

3.AI.通义千问

4.2024 年 1 月 22 日,淘宝源 HTTPS 正式过期!

相关推荐
遇到困难睡大觉哈哈7 小时前
Harmony os 静态卡片(ArkTS + FormLink)详细介绍
前端·microsoft·harmonyos·鸿蒙
用户47949283569158 小时前
Bun 卖身 Anthropic!尤雨溪神吐槽:OpenAI 你需要工具链吗?
前端·openai·bun
p***43488 小时前
前端在移动端中的网络请求优化
前端
g***B7388 小时前
前端在移动端中的Ionic
前端
拿破轮9 小时前
使用通义灵码解决复杂正则表达式替换字符串的问题.
java·服务器·前端
whltaoin9 小时前
【 Web认证 】Cookie、Session 与 JWT Token:Web 认证机制的原理、实现与对比
前端·web·jwt·cookie·session·认证机制
Aerelin9 小时前
爬虫playwright入门讲解
前端·javascript·html·playwright
5***o5009 小时前
前端在移动端中的NativeBase
前端
灵魂学者9 小时前
Vue3.x —— 父子通信
前端·javascript·vue.js·github
1***Q7849 小时前
前端跨域解决方案
前端