× Error: Alchemy URL protocol must be one of http, https, ws, or wss. Recieved: undefined React.js

× Error: Alchemy URL protocol must be one of http, https, ws, or wss. Recieved: undefined React.js

我只是在 VS 代码中克隆了智能合约 React 应用程序并安装了节点模块。当我尝试 npm start 时,它给了我错误 “错误:Alchemy URL 协议必须是 http、https、ws 或 wss 之一。收到:未定义 React.js”。

我该如何解决这个问题?谢谢

不太确定,但请检查您的 package.json 文件并查看 react-scripts 的版本。如果它定义了旧版本,请尝试使用 :

更新到最新版本

npm uninstall react-scriptsyarn remove react-scripts

并使用

重新安装

yarn add react-scriptsnpm add react-scripts.

所以在我的例子中,问题是在你从工件中调用 json 文件的代码中必须正确命名,因为在我的例子中文件的名称不同所以确保你不是这样。

根据 Alchemy documentation,

将 websockets 与 web3-alchemy sdk 一起使用需要使用 websocket URL 设置您的 web3 对象,如下所示:

const { createAlchemyWeb3 } = require("@alch/alchemy-web3");

const web3 = createAlchemyWeb3("wss://eth-mainnet.ws.alchemyapi.io/ws/<api-key>");

设置正确后,您应该可以拨打电话,例如:

web3.eth.getBlockNumber().then(console.log);  // -> 7946893

您看到的错误是由于不正确的参数 undefined React.js 被传递到炼金术 web3 实例化,基本上:

const web3 = createAlchemyWeb3( undefined React.js ); // the error is here

您需要找出出现 undefined React.js 的原因,修复该错误后,您的应用应该能够加载!