解决npm run dev报错

解决:Node.js 版本更新后与 OpenSSL 不兼容导致的npm报错"Error: error:0308010C:digital envelope routines::unsupported"

方法一:更改系统环境变量

Windows 平台:在命令行中运行 $env:NODE_OPTIONS="--openssl-legacy-provider" 命令,然后重启即可。这种方式可以临时解决,但需要每次启动时都运行该命令。

方法二:更改项目环境变量

在 package.json 的 scripts 中新增SET NODE_OPTIONS=--openssl-legacy-provider ,这样在运行 npm run dev 时会自动设置环境变量。

方法三:更换 Node.js 版本

卸载当前 Node.js 环境,并安装 Node.js V17 或之前的版本,以避免 OpenSSL 3.0 带来的兼容性问题。或者使用nvm切换node版本。

方法四:升级依赖库

如果项目依赖于某些不再受支持的加密算法或库,考虑升级这些依赖库以获得更好的兼容性和安全性

方法五:调整应用程序代码

对于直接使用不支持的加密算法的应用程序代码,考虑调整代码以使用 OpenSSL 3.0 支持的算法

相关推荐
涵信4 小时前
第一节 基础核心概念-TypeScript与JavaScript的核心区别
前端·javascript·typescript
小公主5 小时前
JavaScript 柯里化完全指南:闭包 + 手写 curry,一步步拆解原理
前端·javascript
TGB-Earnest7 小时前
【leetcode-合并两个有序链表】
javascript·leetcode·链表
GISer_Jing7 小时前
JWT授权token前端存储策略
前端·javascript·面试
拉不动的猪7 小时前
es6常见数组、对象中的整合与拆解
前端·javascript·面试
放逐者-保持本心,方可放逐8 小时前
webgl(three.js 与 cesium 等实例应用)之浏览器渲染应用及内存释放的关联与应用
开发语言·javascript·webgl·顶点着色器·three.js 释放·cesium 释放·片元着色器
行云流水6268 小时前
js实现输入高亮@和#后面的内容
前端·javascript·css
戒不掉的伤怀10 小时前
react实现axios 的简单封装
javascript·react.js·ecmascript
夏梦春蝉10 小时前
ES6从入门到精通:变量
前端·javascript·es6
步行cgn10 小时前
ES6 核心语法手册
前端·javascript·es6