Web3js

Ganache 無效的 JSON RPC 響應:“”

  • March 12, 2021

嘗試將執行在埠上的 Ganache GUI7545連接到web3.js. 每當嘗試呼叫 web3 的任何功能時都會出現以下錯誤 -

> web3.eth.getBalance("0x907A41F173099E5F5573F0ab43B6Dd9594e3687a").then(console.log);
Promise { <pending> }
> Uncaught Error: Invalid JSON RPC response: ""
   at Object.InvalidResponse (/mnt/c/.../web3_development/node_modules/web3-core-helpers/lib/errors.js:43:16)
   at XMLHttpRequest.request.onreadystatechange (/mnt/c/.../web3_development/node_modules/web3-providers-http/lib/index.js:95:32)
   at XMLHttpRequestEventTarget.dispatchEvent (/mnt/c/.../web3_development/node_modules/xhr2-cookies/dist/xml-http-request-event-target.js:34:22)
   at XMLHttpRequest._setReadyState (/mnt/c/Users/.../web3_development/node_modules/xhr2-cookies/dist/xml-http-request.js:208:14)
   at XMLHttpRequest._onHttpRequestError (/mnt/c/.../web3_development/node_modules/xhr2-cookies/dist/xml-http-request.js:349:14)

node在 WSL-2 上執行。

關於可能導致問題的原因或解決問題的方法的任何幫助都會非常有幫助。

非常感謝!!

才知道 WSL-2 無法localhost直接連接。看到這個這個

WSL-2 有自己的監聽埠。Ganache 讓您可以選擇該埠而不是localhost.

轉到設置 > 伺服器 > 主機名 >172.23.160.1 - Ethernet (WSL) 甘納許設置

可以使用上面@Ismael在評論中提供的命令來檢查埠是否連接。它應該返回塊號。-

curl --data '{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}' -H "Content-Type: application/json" -X POST 127.0.0.1:7545

引用自:https://ethereum.stackexchange.com/questions/93247