Error: error:0308010C:digital envelope routines::unsupported
原因
- 这个错误通常表示在进行加密操作时遇到了不支持的加密方式或配置问题。
node.js的版本问题node.js V17版本中最近发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制,可能会对生态系统造成一些影响。故此以前的项目在升级nodejs版本后会报错。
解决
- 修改
package.json,在相关构建命令之前加入SET NODE_OPTIONS=--openssl-legacy-provider"scripts": { "serve": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve", "build": "SET NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service build" }
相关推荐
解决Node.js报错0308010C[项目源码]
本文详细介绍了三种解决Node.js报错Error: error:0308010C:digital envelope routines::unsupported的方法。报错原因是Node.js V17版本中OpenSSL3.0对算法和密钥大小增加了严格限制。解决方案包括:1. 在终端设置环境变量NODE_OPTIONS=--openssl-legacy-provider(Linux/Mac和Windows命令不同);2. 使用PowerShell设置环境变量;3. 卸载Node.js 17+版本并安装17-版本。作者建议优先尝试前两种临时方案,若无效再考虑第三种彻底解决方案。
正确解决Error: error:0308010C:digital envelope routines::unsupported异常的有效解决方法
正确解决Error: error:0308010C:digital envelope routines::unsupported异常的有效解决方法
解决Node.js加密错误[项目源码]
本文详细介绍了如何解决Node.js中出现的Error: error:0308010C:digital envelope routines::unsupported错误。该错误通常由Node.js版本兼容性问题引起,特别是Node.js 17+版本使用了OpenSSL 3.0,导致旧版加密算法被默认禁用。文章提供了七种解决方案,包括设置环境变量、修改package.json文件、针对不同框架的特定解决方案、降级Node.js版本、更新项目依赖、修改Webpack配置、使用.env文件以及在Docker环境中的设置。作者还解释了错误的根本原因,并推荐了解决问题的优先顺序,建议用户根据具体情况选择最适合的解决方案。
解决VUE前端框架报错[可运行源码]
本文详细分析了前端VUE框架中出现的Error: error:0308010C:digital envelope routines::unsupported报错问题。该问题主要由于Node.js V17版本引入的OpenSSL3.0对算法和密钥大小增加了更严格的限制所致。文章提供了四种解决方案:1)在终端设置环境变量NODE_OPTIONS=--openssl-legacy-provider;2)使用PowerShell设置环境变量;3)降级Node.js版本;4)在package.json的scripts中直接添加SET NODE_OPTIONS=--openssl-legacy-provider命令。这些方法都能有效解决该报错问题,开发者可根据实际情况选择最适合的解决方案。
解决error C2065: '_beginthreadex' :undeclared identifier
报错误error C2065: '_beginthreadex' :undeclared identifier


