Noțiuni de bază despre dezvoltare în Ethereum
Acesta este un ghid pentru începători ca să se familiarizeze cu dezvoltarea în Ethereum. Pentru acest tutorial vom folosi Alchemy, principala platformă de dezvoltare blockchain care activează milioane de utilizatori din 70% dintre aplicațiile blockchain de top, inclusiv Maker, 0x, MyEtherWallet, Dharma și Kyber. Alchemy ne va oferi accesul la un endpoint API pe lanțul Ethereum, ca să putem citi și scrie tranzacții.
Începem de la înregistrarea la Alchemy și te îndrumăm până la scrierea primul script web3! Nu este necesară o experiență de programator blockchain!
1. Înregistrează-te pentru un cont Alchemy gratuit
Crearea unui cont cu Alchemy este ușoară, înregistrează-te gratuit aici.
2. Crearea unei aplicații Alchemy
Pentru a comunica cu lanțul Ethereum și pentru a utiliza produsele Alchemy, aveți nevoie de o cheie API pentru a vă autentifica cererile.
Poți crea chei API din tabloul de bord. Pentru a crea o cheie nouă, navighează la „Creare aplicație” după cum se arată mai jos:
Mulțumiri speciale site-ului ShapeShift pentru că ne permite să arătăm tabloul de bord!
Completează detaliile sub „Creare aplicație” pentru a obține noua cheie. De easemenea, aici poți să vezi aplicațiile pe care le-ai făcut anterior și cele făcute de echipa ta. Trage cheile existente făcând clic pe „Vizualizare cheie” pentru orice aplicație.
Poți trage, de asemenea, cheile API existente prin trecerea peste „Apps” și selectând una. Puteți să „Vizualizați cheia” aici și vă puteți „Edita aplicația” pentru a lista în alb anumite domenii, pentru a vedea mai multe instrumente pentru dezvoltare și pentru a vizualiza datele analitice.
3. Efectuarea unei solicitări din linia de comandă
Interacționează cu blockchain-ul Ethereum prin Alchemy folosind JSON-RPC și curl.
Pentru solicitări manuale, îți recomandăm să interacționezi cu JSON-RPC
prin intermediul solicitărilor POST
. Este suficient să introduci antetul Content-Type: application/json
și interogarea ta ca POST
cu următoarele câmpuri:
jsonrpc
: Versiunea JSON-RPC — în prezent, numai2.0
este acceptată.Method
: Metoda ETH API. Consultă referința API.params
: O listă a parametrilor care trebuie să treacă la metodă.id
: ID-ul solicitării tale. Va fi returnat de răspuns, astfel încât să poți urmări cererea căreia aparține un răspuns.
Iată un exemplu pe care îl poți rula din linia de comandă pentru a recupera prețul curent al gazului:
curl https://eth-mainnet.alchemyapi.io/v2/demo \-X POST \-H "Content-Type: application/json" \-d '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":73}'
NOTE: Replace https://eth-mainnet.alchemyapi.io/v2/demo with your own API key https://eth-mainnet.alchemyapi.io/v2/**your-api-key
**.
Rezultate:
1{ "id": 73,"jsonrpc": "2.0","result": "0x09184e72a000" // 10000000000000 }Copiați
4. Configurează clientul Web3
Dacă aveți un client existent, modificați adresa URL a furnizorului actual al nodului printr-un URL Alchemy cu cheia dvs. API: "https://eth-mainnet.alchemyapi.io/v2/your-api-key"
NOTĂ: Script-urile de mai jos trebuie să fie rulate într-un context nod sau salvate într-un fișier, nu rulează de la linia de comandă. Dacă nu ai instalat deja Node sau npm, consultă acest ghid de configurare pentru mac-uri.
Există tone de biblioteci Web3 pe care le poți integra cu Alchemy, totuși, îți recomandăm să folosești Alchemy Web3, un înlocuitor treptat pentru web3.js, construit și configurat pentru a funcționa perfect cu Alchemy. Acesta oferă mai multe avantaje, cum ar fi reîncercări automate și suport robust WebSocket.
Pentru a instala AlchemyWeb3.js, navigă la directorul proiectului tău și rulează:
Cu Yarn:
1yarn add @alch/alchemy-web3
Cu NPM:
1npm install @alch/alchemy-web3
Pentru a interacționa cu infrastructura nodului Alchemy, rulează în NodeJS sau adaugă aceasta într-un fișier JavaScript:
1const { createAlchemyWeb3 } = require("@alch/alchemy-web3")2const web3 = createAlchemyWeb3(3 "https://eth-mainnet.alchemyapi.io/v2/your-api-key"4)Copiați
5. Scrie primul Web3 Script!
Acum, pentru a ne murdări pe mâini cu puțină programare web3, vom scrie un script simplu, care imprimă cel mai recent număr de bloc de pe rețeaua principală Ethereum.
1. If you haven’t already, in your terminal create a new project directory and cd into it:
1mkdir web3-example2cd web3-example
2. Install the Alchemy web3 (or any web3) dependency into your project if you have not already:
1npm install @alch/alchemy-web3
3. Create a file named index.js
and add the following contents:
În cele din urmă, ar trebui să înlocuiești
demo
cu cheia API Alchemy HTTP.
1async function main() {2 const { createAlchemyWeb3 } = require("@alch/alchemy-web3")3 const web3 = createAlchemyWeb3("https://eth-mainnet.alchemyapi.io/v2/demo")4 const blockNumber = await web3.eth.getBlockNumber()5 console.log("The latest block number is " + blockNumber)6}7main()Copiați
Unfamiliar with the async stuff? Check out this Medium post.
4. Run it in your terminal using node
1node index.js
5. You should now see the latest block number output in your console!
1Cel mai recent număr de bloc este 11.043.912
Woo! Felicitări! You just wrote your first web3 script using Alchemy 🎉
Not sure what to do next? Try deploying your first smart contract and get your hands dirty with some solidity programming in our Hello World Smart Contract Guide, or test your dashboard knowledge with the Dashboard Demo App!
Înregistrează-te la Alchemy gratis, consultă documentația și, pentru cele mai recente știri, urmărește-ne pe Twitter.