React集成Zoom SDK遇ERR_OSSL_EVP_UNSUPPORTED错误求助
React集成Zoom SDK遭遇ERR_OSSL_EVP_UNSUPPORTED错误
我正在React应用中集成Zoom SDK,已严格按照官方示例步骤操作,后端签名接口可正常返回结果,但前端运行时抛出以下错误:
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 (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/util/createHash.js:135:53) at NormalModule._initBuildHash (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/NormalModule.js:417:16) at handleParseError (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/NormalModule.js:471:10) at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/NormalModule.js:503:5 at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/NormalModule.js:358:12 at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/loader-runner/lib/LoaderRunner.js:373:3 at iterateNormalLoaders (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/loader-runner/lib/LoaderRunner.js:214:10) at iterateNormalLoaders (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/loader-runner/lib/LoaderRunner.js:221:10) /Users/vickpro/React projects/expert-buddy-demo/Frontend/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 (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/util/createHash.js:135:53) at NormalModule._initBuildHash (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/NormalModule.js:417:16) at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/NormalModule.js:452:10 at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/webpack/lib/NormalModule.js:323:13 at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/loader-runner/lib/LoaderRunner.js:367:11 at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/loader-runner/lib/LoaderRunner.js:233:18 at context.callback (/Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/loader-runner/lib/LoaderRunner.js:111:13) at /Users/vickpro/React projects/expert-buddy-demo/Frontend/node_modules/babel-loader/lib/index.js:59:103 { opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], library: 'digital envelope routines', reason: 'unsupported', code: 'ERR_OSSL_EVP_UNSUPPORTED' }
我已尝试两种解决方案,但均未奏效:
- 将项目webpack从v4.44.2升级至最新版v5.75.0
- 更新Node.js至最新版本
以下是我的App.js代码:
import React from "react"; import "App.css"; import { ZoomMtg } from "@zoomus/websdk"; ZoomMtg.setZoomJSLib("https://source.zoom.us/2.9.7/lib", "/av"); ZoomMtg.preLoadWasm(); ZoomMtg.prepareWebSDK(); // loads language files, also passes any error messages to the ui ZoomMtg.i18n.load("en-US"); ZoomMtg.i18n.reload("en-US"); function App() { // setup your signature endpoint here var signatureEndpoint = "http://localhost:4000"; // This Sample App has been updated to use SDK App type credentials var sdkKey = "nMYXtjORjReaes6NpngNPakcKP3CiFdIfN7D"; var meetingNumber = "85433353829"; var role = 0; var leaveUrl = "http://localhost:3000"; var userName = "React"; var userEmail = "vickbishnoi@gmail.com"; var passWord = "000000"; // pass in the registrant's token if your meeting or webinar requires registration var registrantToken = ""; function getSignature(e) { e.preventDefault(); fetch(signatureEndpoint, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ meetingNumber: meetingNumber, role: role, }), }) .then((res) => res.json()) .then((response) => { startMeeting(response.signature); }) .catch((error) => { console.error(error); }); } function startMeeting(signature) { document.getElementById("zmmtg-root").style.display = "block"; ZoomMtg.init({ leaveUrl: leaveUrl, success: (success) => { console.log(success); ZoomMtg.join({ signature: signature, meetingNumber: meetingNumber, userName: userName, sdkKey: sdkKey, userEmail: userEmail, passWord: passWord, tk: registrantToken, success: (success) => { console.log(success); }, error: (error) => { console.log(error); }, }); }, error: (error) => { console.log(error); }, }); } return ( <div className="App"> <main> <h1>Zoom Meeting SDK Sample React</h1> <button onClick={getSignature}>Join Meeting</button> </main> </div> ); } export default App;
页面还显示对应错误截图:
这是我面试公司的任务环节,需要实现创建Zoom会议、分享会议链接、参会后跳转反馈页的功能,急需技术协助。
内容的提问来源于stack exchange,提问作者Vikas Jyani
相关产品推荐
相关产品推荐

