node运行报错:error:0308010C:digital envelope routines::unsupported

运行vue前端项目时遇到报错,分析因为node版本不支持。

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

方案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
 

我使用了方案1,成功解决。

你可能感兴趣的:(vue.js,前端,javascript)