Zwei Situationen.
Sie möchten das gesamte Geld auf ein Konto überweisen und den richtigen Betrag für Benzin und Steuern berechnen, damit Sie alles Mögliche überweisen und das Konto bei 0 verlassen.
Sie möchten einen bestimmten Geldbetrag überweisen und die richtige Menge an Benzin und Steuern so berechnen, dass Sie genau den gewünschten Betrag überweisen.
Wie berechnet man beide Werte?
Die zweite ist einfacher, die Gasgebühren werden von Ihrem Konto abgezogen, nicht vom überwiesenen Wert, sodass Sie nur 21.000 Gas (Transaktionskosten) * 50 Shannon (aktueller Mindestgaspreis) angeben müssen.
Um Ihr Konto zu fegen, müssen Sie die Transaktionskosten berechnen (21.000 Gas * 50 Shannon) und Ihren Gesamtsaldo - Kosten senden. Dadurch bleibt Ihr Konto bei 0 Guthaben.
Wie von Tjaden Hess hier besprochen , müssen Sie die Gasmenge mit dem Gaspreis multiplizieren und darüber ein einzelnes Wei abziehen (nicht sicher warum).
Sie können die Menge von 21.000 Gas und den Gaspreis von 50 Shannon angeben:
{from:'0xACCOUNT', to:'0xRECIPIENT', value:eth.getBalance('0xACCOUNT') - 21000 * 50000000000 - 1, gas:21000, gasPrice:50000000000}
Beachten Sie, dass Sie in der Mist-Ethereum-Brieftasche Probleme mit dem Runden aller Dezimalstellen haben. Es wird empfohlen, eine Befehlszeilenschnittstelle wie Geth zu verwenden, um die genauen Beträge herauszufinden.
Der Gaspreis ist ein bewegliches Ziel. Wenn dies nicht funktioniert, können Sie auch den Transaktionskostenrechner für Ethereum verwenden.
eth