什麼是 http://localhost:8545?
為什麼一些與乙太坊相關的網站(例如 regis.nu,還有很多其他網站)告訴我他們找不到執行在http://localhost:8545的節點,我該怎麼辦?
Regis.nu 允許我創建一個“輕錢包”,然後我必須在其中放一些乙太幣,但我真的不想這樣做。我想用我自己的錢包。我試著開始’geth’,但現在我要進入深水,我不會游泳。
所以問題:如何在http://localhost:8545啟動一個節點?
http://localhost:8545
是您本地執行的乙太坊節點軟體的 RPC 埠。執行時
geth
,乙太坊節點軟體的 Go 實現,創建和配置這個 RPC 服務的命令行參數如下:user@Kumquat:~$ geth --help | grep rpc --rpc Enable the HTTP-RPC server --rpcaddr "127.0.0.1" HTTP-RPC server listening interface --rpcport "8545" HTTP-RPC server listening port --rpcapi "db,eth,net,web3" API's offered over the HTTP-RPC interface --rpccorsdomain Domains from which to accept cross origin requests (browser enforced)
和的預設值
--rpcaddr
將允許 regis.nu 網頁連接到您的本地節點。但是,您需要配置以允許您的 Web 瀏覽器訪問您的本地乙太坊節點。--rpcport``--rpcapi``geth``--rpccorsdomain
要在本地電腦上啟動一個節點,為 regis.nu 網頁提供對您節點的訪問權限,請嘗試:
geth --rpc --rpcaddr "127.0.0.1" --rpcport "8545" \ --rpc --rpccorsdomain "http://regis.nu" console
注意:設置
--rpccorsdomain
為"http://regis.nu"
將適用於 regis.nu 網頁。如果您在連接時遇到問題,請開始測試"*"
以檢查網頁是否可以連接到您的節點,然後找到正確的設置以最大程度地降低安全風險 - 請參閱跨域資源共享了解更多資訊。請注意,使用"*"
可能有風險。查看從regis.nu連結的 regis.nu/main.js中的 JavaScript 程式碼,您將看到:
module.exports={nodeAddress:["http://localhost:8545","http://104.41.138.167:8545"], ...}
該頁面將首先嘗試在本地連接到您的 RPC 埠,然後嘗試在 IP 地址 104.41.138.167 處可用的 RPC 埠。
我在我的網路瀏覽器中載入
http://regis.nu
,然後點擊Start
按鈕,但網站無法連接到我本地執行的 RPC 埠geth
。http://localhost
在允許regis.nu 網頁連接到我的本地geth
節點並列出我的帳戶之前,我必須在瀏覽器中暫時允許我的 NoScript 外掛。有用的參考: