Zugriff auf geth über JSON-RPC nicht möglich. Es gibt {"jsonrpc":"2.0","error":{"code":-32600,"message":"EOF"}} zurück

Ich habe versucht, per RPC auf Geth zuzugreifen.

$ geth --dev --datadir mydir --rpc --rpcaddr "localhost" --rpcport "8545" --rpccorsdomain "*" console

Es hat jedoch den Fehler zurückgegeben. Können Sie mir sagen, wie ich das Problem lösen kann?

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

Update Ich habe eine Verbindung über RPC, aber auf der Browser-Solidity kann ich meinen privaten Knoten nicht verbinden.

Geben Sie hier die Bildbeschreibung ein

Was ist die JSON-RPC-Anforderung, die Sie ausgeführt haben?
http://localhost:8545
Ist die Antwort richtig?

Antworten (1)

Ich vermute, es ist der Befehl, den Sie verwenden.

Das funktioniert:

user@Kumquat:~$ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}' http://localhost:8545
{"jsonrpc":"2.0","id":1,"result":{"currentBlock":"0x1eb260","highestBlock":"0x1eb478","knownStates":"0x0","pulledStates":"0x0","startingBlock":"0x1eaea3"}}

Und das geht nicht:

user@Kumquat:~$ curl '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}' http://localhost:8545
curl: (3) [globbing] nested brace in column 50
{"jsonrpc":"2.0","error":{"code":-32600,"message":"EOF"}}

Hier sind einige einfache Befehle, mit denen Sie testen können:

user@Kumquat:~$ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_coinbase","params":[],"id":1}' http://localhost:8545
{"jsonrpc":"2.0","id":1,"result":"0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}

user@Kumquat:~$ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":1}' http://localhost:8545
{"jsonrpc":"2.0","id":1,"result":"0x4a817c800"}
$ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_syncing","params":[],"id":1}' http://localhost:8545 {"jsonrpc":"2.0","id":1,"result":false}
Jawohl. Dein Befehl funktioniert einwandfrei. Ihr privater Knoten wird nicht synchronisiert, daher ist das Ergebnis falsch.
Es scheint nicht zu funktionieren. Ich werde versuchen, es zu debuggen.
> rpc { module: { admin: "1.0", debug: "1.0", eth: "1.0", miner: "1.0", net: "1.0", personal: "1.0", rpc: "1.0", shh: "1.0", txpool: "1.0", web3: "1.0" }, getModules: function(callback) } Mein Knoten verwendet rpc:1.0. Ist es der Grund?
Ihr Rückgabeergebnis {"jsonrpc":"2.0","id":1,"result":false}ist das richtige Ergebnis. Das Folgende funktioniert auf der Mainnet-Blockchain und gibt das Guthaben an der Adresse zurück 0x0000...0000- das curl -X POST --data '{"jsonrpc":"2.0","method":"eth_getBalance","params":["0x0000000000000000000000000000000000000000", "latest"],"id":1}' http://localhost:8545 {"jsonrpc":"2.0","id":1,"result":"0x16d53d844d5d4397305"}RPC-Modul v1.0 ist perfekt.
$ curl -X POST --data '{"jsonrpc":"2.0","method":"eth_coinbase","params":[],"id":1}' localhost:8545 {"jsonrpc":"2.0 ","id":1,"result":"0x86d13ef4629e9b855a8045cd8b2f67ba6a736ba6"}
Ich habe Daten vom Knoten. Danke! Bei der Browser-Solidität kann ich jedoch keine Verbindung zum lokalen privaten Knoten herstellen. Können Sie herausfinden, was der Grund ist?
Bitte stellen Sie eine neue Frage und ich werde mich darum kümmern.
Ich habe in Frage gestellt! Bitte überprüfen Sie es :) ethereum.stackexchange.com/questions/7796/…