Go-Ethereum
錯誤:無效的 JSON RPC 響應:未從節點 web3.js 應用程序定義
Error: Invalid JSON RPC response: undefined
當我的 node.js 應用程序嘗試執行一個函式時,我正在獲取它。我的步驟:
- 乙太坊錢包 0.5.1 將合約部署到測試網。
- 啟動 geth 客戶端版本 1.3.3:
$ geth --rpc --rpcaddr "0.0.0.0" --rpcapi "eth,web3" --rpcport 8546 --networkid 5678 attach
(我可以
web3.eth.accounts
在 geth 控制台中執行,它會返回我在本地創建的帳戶)
- 使用 npm 安裝 web3 版本 0.15.3
- 從節點外殼中:
> var Web3 = require('web3') > web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8546")) > web3.version.api '0.15.3' > web3.eth.accounts Error: Invalid JSON RPC response: undefined at Object.module.exports.InvalidResponse (/Users/jbowkett/node_modules/web3/lib/web3/errors.js:35:16) at HttpProvider.send (/Users/jbowkett/node_modules/web3/lib/web3/httpprovider.js:87:22) at RequestManager.send (/Users/jbowkett/node_modules/web3/lib/web3/requestmanager.js:58:32) at Eth.get [as accounts] (/Users/jbowkett/node_modules/web3/lib/web3/property.js:107:62) at repl:1:9 at REPLServer.defaultEval (repl.js:252:27) at bound (domain.js:287:14) at REPLServer.runBound [as eval] (domain.js:300:12) at REPLServer.<anonymous> (repl.js:417:12) at emitOne (events.js:82:20)
另外:
$ telnet localhost 8546
沒有連接
從 geth 控制台:
admin.startRPC("127.0.0.1", 8545, "*", "web3,db,net,eth")
然後我能夠在節點中重新連接,並列出帳戶。(不出所料,從 geth 中啟動 RPC 後,telnet 也在此埠上響應)
取自這裡: