RPC-Fehler: Methoden nicht gefunden

Ich verwende die Expanse-Version von go-ethereum, um mit Expanse zu spielen. Ich mache den RPC-Port über das Netz verfügbar und verbinde mich mit "geth-attach" von einem anderen Computer aus damit. Keiner der Befehle, die ich an der Konsole gewohnt bin, funktioniert. Zum Beispiel:

> admin.peers
ReferenceError: 'admin' is not defined
    at <anonymous>:1:1

Und das gleiche Problem tritt bei curl auf.

Wenn ich das eingebe:

curl -X POST --data '{"jsonrpc":"2.0","method":"miner_start","params":[4],"id":74}' localhost:8545

Ich bekomme diese Antwort:

{"jsonrpc":"2.0","id":74,"error":{"code":-32601,"message":"The method miner_start does not exist/is not available"}}

Ich habe wahrscheinlich eine sehr einfache Option deaktiviert, aber es gibt so viele "rpc" dies und das, dass ich mich irgendwie verliere. Irgendwelche Ideen?

Danke schön.

Antworten (1)

Die meisten der auf der Konsole verfügbaren Befehle ( ipc) sind aus Sicherheitsgründen nicht über rpc verfügbar. Wenn Sie wissen rpc, dass niemand außer Ihnen auf Ihre Verbindung zugreifen kann, starten Sie gethmit den folgenden Flags, um die zusätzlichen APIs verfügbar zu machen:

geth --rpc --rpcapi web3,eth,personal,miner,net,txpool

Fügen Sie alle zusätzlichen APIs, die Sie benötigen, zu den Parametern von hinzu --rpcapi.

Sie sollten admin hinzufügen, damit admin.peers funktioniert.