uni-app 报错 error:0308010C:digital envelope routines::unsupported

uni-app 报错 error:0308010C:digital envelope routines::unsupported

10 回复

请问解决了么,同样的问题

更多关于uni-app 报错 error:0308010C:digital envelope routines::unsupported的实战教程也可以访问 https://www.itying.com/category-93-b0.html


同样有这个问题

hbuildx更新到最新版本后出现了


你好 这个问题 官方没人回复吗 我升级hbuildx版本后也出现了@DCloud_uniAD_HDX

升级HBX 同样出现

升级项目内的全部的npm包

同样的问题

同样的问题,请问有人解决了吗

我这运行npx @dcloudio/uvm@latest更新了对应的包解决了,可以试试

这个错误通常与 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
回到顶部