解决前端VUE前端框架报错Error: error:0308010C:digital envelope routines::unsupported的几种方法

一、报错信息:

复制代码
Error: error:0308010C:digital envelope routines::unsupported
    at new Hash (node:internal/crypto/hash:67:19)
    at Object.createHash (node:crypto:135:10)
    at module.exports (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\webpack\lib\util\createHash.js:135:53)
    at NormalModule._initBuildHash (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\webpack\lib\NormalModule.js:417:16)
    at handleParseError (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\webpack\lib\NormalModule.js:471:10)
    at E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\webpack\lib\NormalModule.js:503:5        
    at E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\webpack\lib\NormalModule.js:358:12       
    at E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\loader-runner\lib\LoaderRunner.js:373:3  
    at iterateNormalLoaders (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
at iterateNormalLoaders (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\loader-runner\lib\LoaderRunner.js:221:10)
    at E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\loader-runner\lib\LoaderRunner.js:236:3  
    at runSyncOrAsync (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\loader-runner\lib\LoaderRunner.js:130:11)
    at iterateNormalLoaders (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\loader-runner\lib\LoaderRunner.js:232:2)
    at Array.<anonymous> (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
    at Storage.finished (E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)
    at E:\Projects\platform-code\platform-cloud\ruoyi-ui\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9
10% building 2/5 modules 3 active ...nt-loader\index.js??ref--13-0!E:\Projects\platform-code\platform-cloud\ruoyi-ui\src\main.jsnode:internal/crypto/hash:67
  this[kHandle] = new _Hash(algorithm, xofLen);

二、原因分析

主要是因为 nodeJs V17 版本发布了 OpenSSL3.0 对算法和秘钥大小增加了更为严格的限制,nodeJs v17 之前版本没影响,但 V17 和之后版本会出现这个错误。

三、解决方案

**方案1:**打开IDEA 终端,直接输入

复制代码
# Linux & Mac OS:
export NODE_OPTIONS=--openssl-legacy-provider

# Windows:
set NODE_OPTIONS=--openssl-legacy-provider

**方案2:**打开IDEA 终端,直接输入(问题解决)

复制代码
$env:NODE_OPTIONS="--openssl-legacy-provider"

**方案3:**卸载当前版本,安装合适的版本(node.js)

**方案4:**解决方式(仅限 windows):

在项目中 package.json 的 scripts 中新增 SET NODE_OPTIONS=--openssl-legacy-provider

添加前:

复制代码
"scripts": {
"dev": "vue-cli-service serve",

"build:prod": "vue-cli-service build"

},

添加后:

复制代码
"scripts": {
"dev": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve",
"build:prod": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build"
},
相关推荐
zubylon10 小时前
Ollama 本地起一个开发助手
前端·人工智能
遇见~未来11 小时前
第五篇_构建真实页面_组件_响应式_维护性
前端·css3
魔士于安11 小时前
Unity完整小球迷宫项目
前端·unity·游戏引擎·贴图·模型
irpywp11 小时前
苦于AI生成的网页千篇一律且粗糙?design-md-chrome :一款网页样式提取插件 ,将任意网站的视觉规范转化为大模型可读的代码指令!
前端·人工智能·chrome·开源·github
xingpanvip11 小时前
星盘接口开发文档:日运语料接口指南
android·开发语言·前端·css·php·lua
网络点点滴11 小时前
Node.js理论-Web的基本运作原理
前端·node.js
宝宝宝阿12 小时前
前端访问后台接口存在跨域问题,如何处理解决
前端
广州华水科技12 小时前
北斗GNSS与单北斗变形监测在水库安全监测中的应用探索
前端
蜡台12 小时前
使用 html javascript 实现 金币落袋效果
前端·javascript·html
IT_陈寒12 小时前
为什么我的Python multiprocessing总是卡在join()?
前端·人工智能·后端