Go-Ethereum

即使 RPC 埠也無法連接乙太坊節點:8545 已打開

  • October 18, 2021

我已經創建了我的私有乙太坊區塊鍊網路。從不同的伺服器,我可以毫無問題地連接並作為對等方添加到網路中。

我執行伺服器的方式:

geth --targetgaslimit "994712388" --port 3000 --networkid 23422 --identity node1 
--verbosity 3 --nodiscover --nat none --datadir="/home/miner/MyEthereumEbloc" 
--rpccorsdomain '*' --rpc --rpcaddr "localhost" --
rpcport="8545" --nodiscover --maxpeers=6 --ipcapi "admin,eth,web3" --autodag

如您所見,RPC 埠已打開:

$ telnet localhost 8545
Trying 127.0.0.1...
Connected to localhost.

在我的 geth 控制台中:

> admin.startRPC("127.0.0.1", 8545, "*", "web3,net,eth")
HTTP RPC already running on localhost:8545

http://localhost:8545是我本地執行的乙太坊節點軟體的 RPC 埠。但在我的瀏覽器上,http://localhost:8545我看到以下錯誤:

{"jsonrpc":"2.0","error":{"code":-32600,"message":"eof"}}

在我執行引導節點的 geth 控制台內;我正在執行以下程式碼以與我的本地節點通信:

var Web3 = require("web3");
var web3 = new Web3(new Web3.providers.HttpProvider('http://localhost:8545'));
web3.isConnected()   //returns false

web3.isConnected()一直返回false

$$ Q $$我知道有許多與本地節點的 web3 連接相關的文件,並且我已遵循所有建議。但我無法修復我面臨的 web3 連接問題。我該如何解決這個問題?感謝您寶貴的時間和幫助。 我已經完成了以下問題的建議: 如何將網站連接到 geth 節點?, https://forum.ethereum.org/discussion/3414/step-by-step-guide-to-connect-a-web-site-to-a-geth-node , https://gitter.im/ethereum /web3.js/archives/2015/12/31

編輯: 對於閱讀此內容的其他使用者:解決方案是在此答案的評論中找到 - 啟動參數錯誤。

對節點的 http 請求不應該返回任何有用的東西,在瀏覽器中獲得該響應是完全可以的。假設你想為你的私有鏈開發一個 dApp,我建議使用https://github.com/ConsenSys/truffle - 你告訴 truffle 與你的節點通信,然後它處理你的網站和私有鏈之間的所有通信. 該文件非常有用:https ://truffle.readthedocs.io/en/latest/

玩得開心 !:)

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