Die Alten sagten, dass man in der Baisse mehr lesen und mehr studieren sollte. Heixiazi wird Ihnen ohne weiteres das relevante Wissen über die Blocktransaktionsinformations-API und ABI in der Solidität der ETH-Smart-Contract-Entwicklungssprache mitteilen. Ich hoffe, Sie unterstützen mich und freuen uns auf den nächsten Bullenmarkt damit ETH 10.000 US-Dollar durchbricht🙌 $ETH

1. Welche APIs werden häufig für Blöcke und Transaktionen verwendet?

blockhash(uint blockNumber) Gibt den Hashwert der angegebenen Blocknummer zurück und unterstützt nur die letzten 256 Blöcke

block.coinbase return(address) Die Adresse des aktuellen Block-Miners

block.difficulty returns(uint) Schwierigkeit des aktuellen Blocks

block.gaslimit gibt (uint) gaslimit des aktuellen Blocks zurück

block.number gibt (uint) die Blocknummer des aktuellen Blocks zurück

block.timestamp gibt den (uint) Zeitstempel des aktuellen Blocks zurück

gasleft return(uint) Holen Sie sich das verbleibende Gas

msg.data returns(uint256) Vollständige Anrufdaten (calldata)

msg.sender returns(address) Die Adresse des aktuellen Anrufers

msg.sig gibt(bytes4) zurück. Die ersten vier Bytes der Aufrufdaten (calldata), beispielsweise eine Funktionskennung

msg.value returns(uint) Das an diese Nachricht angehängte Ethereum in Wei

tx.gasprice returns(uint) Der Gaspreis der Transaktion

tx.origin returns(address) Der Absender der Transaktion

2. ABI-Kodierung

Der vollständige Name von ABI lautet Application Binary Interface. Wir initiieren eine Transaktion (Aufruf einer Funktion) an die Vertragsadresse, und der Transaktionsinhalt sind die ABI-codierten Daten. Das Bild unten zeigt den ABI

ABI-bezogene Kodierungsfunktionen

abi.encode(...) gibt (Bytes) ABI-Kodierung der Berechnungsparameter zurück

abi.encodePacked(...) gibt(Bytes) zurück. Berechnet die dicht gepackte Codierung von Parametern

abi.encodeWithSelector(...) returns(bytes) Berechnet die ABI-Codierung von Funktionsselektoren und Parametern

abi.encodeWithSignature(...) returns(bytes) Berechnet die ABI-Codierung von Funktionsselektoren und Parametern

3. Verwandte Codeübungen