uni-app 报错 error:0308010C:digital envelope routines::unsupported
uni-app 报错 error:0308010C:digital envelope routines::unsupported
请问解决了么,同样的问题
更多关于uni-app 报错 error:0308010C:digital envelope routines::unsupported的实战教程也可以访问 https://www.itying.com/category-93-b0.html
同样有这个问题
hbuildx更新到最新版本后出现了
你好 这个问题 官方没人回复吗 我升级hbuildx版本后也出现了@DCloud_uniAD_HDX
升级HBX 同样出现
升级项目内的全部的npm包
同样的问题
同样的问题,请问有人解决了吗
这个错误通常与 Node.js 的加密库有关,特别是在 Node.js 17 及以上版本中。原因是 Node.js 17 默认启用了 OpenSSL 3.0,而某些旧的加密算法在 OpenSSL 3.0 中不再支持。
解决方法
以下是几种常见的解决方法:
1. 降级 Node.js 版本
如果你不依赖于 Node.js 17 或更高版本的新特性,可以考虑降级到 Node.js 16 或更低版本。Node.js 16 使用的是 OpenSSL 1.1.1,不会遇到这个问题。
你可以使用 nvm
(Node Version Manager)来管理 Node.js 版本:
nvm install 16
nvm use 16
2. 设置环境变量
如果你不想降级 Node.js 版本,可以通过设置环境变量来禁用 OpenSSL 3.0 中的新特性。
在终端中运行以下命令:
export NODE_OPTIONS=--openssl-legacy-provider
或者,如果你在 Windows 上使用 PowerShell:
$env:NODE_OPTIONS="--openssl-legacy-provider"
你可以在项目的 package.json
中的 scripts
部分添加这个环境变量,或者在启动项目之前手动设置。
3. 更新依赖包
有时,这个问题可能是由于某些依赖包使用了旧的加密算法。尝试更新你的项目依赖包到最新版本,看看是否解决了问题。
npm update
或者
yarn upgrade
4. 使用 --openssl-legacy-provider
启动项目
如果你在启动项目时遇到这个错误,可以在启动命令中添加 --openssl-legacy-provider
参数。
例如:
npm run serve --openssl-legacy-provider
或者:
yarn serve --openssl-legacy-provider