Senie teica, ka lāču tirgū vairāk lasi un mācies. Bez papildu piepūles Heixiazi dalīsies ar jums attiecīgajām zināšanām par bloku darījumu informācijas API un ABI ETH viedā līguma izstrādes valodā. Ceru, ka jūs mani atbalstīsit un gaidīsit nākamo bullīšu tirgu lai ETH pārvarētu 10 000 ASV dolāru🙌 $ETH
1. Kādi ir visbiežāk lietotie API blokiem un transakcijām?
blockhash(uint blockNumber) Atgriež dotā bloka numura jaucējvērtību, atbalsta tikai jaunākos 256 blokus
block.coinbase returns(address) Pašreizējā bloka ieguvēja adrese
block.difficulty returns(uint) Pašreizējā bloka grūtības
block.gaslimit atgriež(uint) pašreizējā bloka gaslimit
block.number returns(uint) Pašreizējā bloka bloka numurs
block.timestamp atgriež (uint) pašreizējā bloka laikspiedolu
gasleft returns(uint) Iegūstiet atlikušo gāzi
msg.data returns(uint256) Pilnīgi zvana dati (calldata)
msg.sender returns(address) Pašreizējā zvanītāja adrese
msg.sig returns(bytes4) Pirmie četri zvana datu (calldata) baiti, piemēram, funkcijas identifikators
msg.value returns(uint) Ethereum, kas pievienots šim ziņojumam, wei valodā
tx.gasprice returns(uint) Darījuma gāzes cena
tx.origin returns(address) Darījuma sūtītājs
2. ABI kodējums
ABI pilns nosaukums ir Application Binary Interface. Mēs iniciējam darījumu (funkcijas izsaukšanu) uz līguma adresi, un darījuma saturs ir ABI kodētie dati. Zemāk redzamajā attēlā ir ABI

Ar ABI saistītās kodēšanas funkcijas
abi.encode(...) atgriež(baitus) Aprēķinu parametru ABI kodējums
abi.encodePacked(...) atgriež(baitus) Aprēķinu parametru cieši iesaiņota kodēšana
abi.encodeWithSelector(...) atgriež(baitus) Aprēķina funkciju atlasītāju un parametru ABI kodējumu
abi.encodeWithSignature(...) atgriež(baitus) Aprēķina funkciju atlasītāju un parametru ABI kodējumu
3. Saistītie koda vingrinājumi
