Go-Ethereum

如何在 nodejs 上通過 IPC 連接到 geth?

  • September 15, 2020

這是我用來執行 geth 的命令行。

geth ipc --ipcapi "admin,db,eth,debug,miner,net,shh,txpool,personal,web3" --ipcpath "/root/.ethereum_experiment/geth.ipc"

所以從節點 js 如何連接到這個 geth 客戶端,在此之前我正在做 rpc 並使用 http 提供程序進行連接,但我希望通過 IPC 連接而不是通過 RPC。

根據您可以執行的文件:

$ geth attach ipc:/some/custom/path
$ geth attach http://191.168.1.1:8545
$ geth attach ws://191.168.1.1:8546

所以第一行就是你想要的,只需替換/some/custom/path/root/.ethereum_experiment/geth.ipc

編輯:剛剛看到你想在nodejs上做,我沒有測試它但是使用提供者ipc:/some/custom/path應該沒問題

由於您專門詢問了 Node.js,請參閱我對類似問題Getting contract balance over JSON RPC的回答

TL;DR 使用官方 web3 JavaScript 庫,該庫處理通過 RPC 連接到伺服器並讓您可以輕鬆訪問以查詢數據。

有關更多詳細資訊,請參閱我連結的問題。

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