Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:71:19)
at Object.createHash (node:crypto:140:10)
at module.exports (D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\util\createHash.js:90:53)
at NormalModule._initBuildHash (D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\NormalModule.js:386:16)
at handleParseError (D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\NormalModule.js:434:10)
at D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\NormalModule.js:466:5
at D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\NormalModule.js:327:12
at D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:373:3
at iterateNormalLoaders (D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:214:10)
at iterateNormalLoaders (D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:221:10)
at D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:236:3
at runSyncOrAsync (D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:130:11)
at iterateNormalLoaders (D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:232:2)
at Array.<anonymous> (D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:205:4)
at Storage.finished (D:\web development\frontend\react\reduxbasic\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:55:16)
at D:\web development\frontend\react\reduxbasic\node_modules\enhanced-resolve\lib\CachedInputFileSystem.js:91:9
D:\web development\frontend\react\reduxbasic\node_modules\react-scripts\scripts\start.js:19
throw err;
^
Error: error:0308010C:digital envelope routines::unsupported
at new Hash (node:internal/crypto/hash:71:19)
at Object.createHash (node:crypto:140:10)
at module.exports (D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\util\createHash.js:90:53)
at NormalModule._initBuildHash (D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\NormalModule.js:386:16)
at D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\NormalModule.js:418:10
at D:\web development\frontend\react\reduxbasic\node_modules\webpack\lib\NormalModule.js:293:13
at D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:367:11
at D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:233:18
at context.callback (D:\web development\frontend\react\reduxbasic\node_modules\loader-runner\lib\LoaderRunner.js:111:13)
at D:\web development\frontend\react\reduxbasic\node_modules\babel-loader\lib\index.js:51:103 {
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported',
code: 'ERR_OSSL_EVP_UNSUPPORTED'
}
Node.js v19.4.0
PS D:\web development\frontend\react\reduxbasic>
如何解决这个错误
问题:
正如我所看到的,您正在使用
version 19
的 node.js(不推荐给大多数用户),在 Node.js 官方网站上也有提及。
解决方案:
下载
version 18
的 node.js (LTS
推荐给大多数用户)适用于您的操作系统。
删除 node_modules 和 package_lock 文件。
奔跑
npm install
.
再次运行您的应用程序。
现在应该解决问题。
你必须在这个文件中使用
md5
md4
是默认的,但它不会起作用。
Crypto 是来自 Node.js 的工具 https://nodejs.org/api/crypto.html#cryptocreatehashalgorithm-options
我知道这并不理想,但现在可以正常工作,直到我删除 node_modules 文件夹😭
➜ ~ node -v
v19.8.1
➜ ~ npx react-native -v
10.2.0
➜ ~ react-native --version
4.14.0
➜ ~ npm -v
9.5.1