Ar žinojai, kad naudodamiesi naujos kartos „Moralis“ mazgais, galite gauti NFT balansus tik su vienu RPC skambučiu? Mūsų išplėstiniai RPC metodai ir eth_getNFTBalances
Pabaigos taškas daro NFT balansą. Norite sužinoti, kaip tai veikia? Peržiūrėkite žemiau pateiktą veiksmą:
import fetch from 'node-fetch'; const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json' }, body: JSON.stringify({ "jsonrpc": "2.0", "id": 1, "method": "eth_getNFTBalances", "params": ( { "address": "0xDc597929101c2DE50c97D43C8EA3A372Bf55fdc0", "limit": 10, } ) }) }; fetch('YOUR_NODE_URL', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Paskambinę aukščiau esantį scenarijų, gausite nurodytos piniginės NFT balansus, praturtintus metaduomenimis, adresais, kolekcijos duomenimis ir dar daugiau. Štai kaip tai gali atrodyti:
{ jsonrpc: '2.0', id: 1, result: { //... result: ( { amount: '1', token_id: '1919', token_address: '0xbd3531da5cf5857e7cfaa92426877b022e612cf8', contract_type: 'ERC721', owner_of: '0xdc597929101c2de50c97d43c8ea3a372bf55fdc0', last_metadata_sync: '2024-08-25T23:35:51.384Z', last_token_uri_sync: '2024-08-25T23:35:50.893Z', metadata: '{"attributes":({"trait_type":"Background","value":"Mint"},{"trait_type":"Skin","value":"Olive Green"},{"trait_type":"Body","value":"Turtleneck Pink"},{"trait_type":"Face","value":"Eyepatch"},{"trait_type":"Head","value":"Wizard Hat"}),"description":"A collection 8888 Cute Chubby Pudgy Penquins sliding around on the freezing ETH blockchain.","image":"ipfs://QmNf1UsmdGaMbpatQ6toXSkzDpizaGmC9zfunCyoz1enD5/penguin/1919.png","name":"Pudgy Penguin #1919"}', block_number: '19754671', block_number_minted: null, name: 'PudgyPenguins', symbol: 'PPG', token_hash: 'cbd8bd0901f422afb88e76615e3d2a1a', token_uri: 'https://ipfs.moralis.io:2053/ipfs/bafybeibc5sgo2plmjkq2tzmhrn54bk3crhnc23zd2msg4ea7a4pxrkgfna/1919', minter_address: null, verified_collection: true, possible_spam: false, collection_logo: 'https://i.seadn.io/gae/yNi-XdGxsgQCPpqSio4o31ygAV6wURdIdInWRcFIl46UjUQ1eV7BEndGe8L661OoG-clRi7EgInLX4LPu9Jfw4fq0bnVYHqg7RFi?w=500&auto=format', collection_banner_image: 'https://i.seadn.io/gcs/files/8a26e3de0f309089cbb1e5ab969fc0bc.png?w=500&auto=format' }, //... ) } }
Tai viskas! Naudojant NFT balansą, reikia tik vieno RPC skambučio, kai pasinaudojant moralu ir mūsų aukščiausio lygio mazgais. Norėdami sužinoti daugiau, prisijunkite prie šio vadovėlio arba apsilankykite eth_getNFTBalances
Dokumentacijos puslapis.
Žemiau galite žiūrėti „Moralis YouTube“ vaizdo įrašą, kad sužinotumėte, kaip gauti piniginės NFT balansus naudojant „Ethers.js“:
Pasiruošę pradėti naudoti mūsų išplėstinius RPC metodus? Šiandien prisiregistruokite gauti nemokamą sąskaitą su „Moralis“!
Apžvalga
Piniginės balanso NFT likučiai, naudojant RPC užklausas, gali būti varginanti ir daug laiko reikalaujanti užduotis. Su įprastais metodais, tokiais kaip eth_call
reikia daugybės užklausų, išsamų rankinio duomenų kaupimą ir daug pastangų, kad gautumėte reikalingus duomenis. Laimei, dabar yra geresnė alternatyva: „Moralis“ išplėstiniai RPC metodai.
Bet kokie yra mūsų išplėstiniai RPC metodai? Ir kaip jie gali padėti jums gauti NFT balansus tik su viena RPC užklausa? Norėdami gauti atsakymus į šiuos klausimus, prisijunkite prie mūsų šiame straipsnyje, nes mes visa tai jums išdėstome. Pasinerkime tiesiai!
„Moralis“ naujos kartos RPC mazgai-geriausias būdas gauti NFT balansus
„Moralis“ yra žymus aukščiausio lygio, naujos kartos RPC mazgų tiekėjas. Naudodamiesi intuityvia vartotojo sąsaja, galite nustatyti visas pagrindines grandines mazgus, paspausdami keletą mygtukų. Kai kurios palaikomos grandinės apima „Ethereum“, „Polygon“, „BNB Smart Chain“ (BSC), optimizmą ir bazę.

Bet kodėl turėtumėte pasirinkti „Moralis“ kaip savo mazgo teikėją?
- Greitis: Turėdami 70 ms reagavimo laiką, mes nustatėme pramonės etaloną greičiui.
- Patikimumas: Mūsų mazgai gali pasigirti įspūdingu 99,9% veikimo laiku, suteikdami aukščiausio lygio patikimumą.
- Užtikrinti: Apsaugokite savo įmonės duomenis pasirinkdami „Moralis“ kaip jūsų patikimą 2 tipo „Soc 2“ partnerį.
Be didelio greičio, įspūdingo patikimumo ir įmonės lygio saugumo, „Moralis“ taip pat teikia išplėstinius RPC metodus.
Bet kas jie? O kaip jie veikia?
Prisijunkite prie mūsų kitame skyriuje ir sužinokite!
Išplėsti RPC metodai
Mūsų išplėstiniai RPC metodai leidžia jums lengvai gauti dekoduotus, žmogaus skaitomus duomenis per RPC mazgus. Vienas skambutis suteikia NFT likučius, iššifruotas operacijas, žetonų kainas, metaduomenis ir daug daugiau. Taigi, naudodamiesi mūsų naujos kartos mazgais, galite supaprastinti savo kūrėjo patirtį ir gauti grandinės duomenis naudodamiesi RPC stiliaus užklausomis, nepažeisdami prakaito.

Kokie metodai yra prieinami?
eth_getNFTBalances
: Paimkite piniginės NFT balansą.eth_getNFTCollections
: Gaukite kolekcijas, kurias laikė piniginė.eth_getTransactions
: Užklausa Gimtosios piniginės sandorių istorija.eth_getDecodedTransactions
: Gaukite visą piniginės operacijų istoriją.eth_getTokenBalances
: Paimkite „ERC-20“ piniginės balansus.eth_getTokenMetadata
: Gaukite ERC-20 žetonų metaduomenis.eth_getTokenPrice
: Prieiga prie bet kurio ERC-20 prieigos rakto kainos.
Apskritai, naudodamiesi RPC stiliaus užklausomis, naudodamiesi aukščiau pateiktais metodais, galite be vargo gauti dekoduotus, žmogaus skaitomus duomenis.
eth_getNFTBalances
– Lengviausias būdas gauti NFT balansą su vienu RPC skambučiu
eth_getNFTBalances
Metodas yra jūsų pasirinkimas, jei ieškote paprasto būdo, kaip gauti NFT balansus tik su vienu RPC skambučiu. Šis metodas pateikia išsamų nurodytų piniginės NFTS sąrašą, praturtintą metaduomenų, adresų, simbolių, kolekcijos duomenų ir dar daugiau. Iš esmės niekada nebuvo lengviau gauti piniginės NFT balansus naudojant RPC mazgus.

Bet kaip tiksliai tai veikia? O kaip atrodo tikrasis atsakymas? Norėdami gauti atsakymus į šiuos klausimus, prisijunkite prie mūsų kitame skyriuje, kur mes pateiksime jums visą vadovėlį, kaip gauti piniginės NFT balansus tik su vienu RPC užklausa!
Visas pamoka: gaukite piniginės NFT balansus su vienu RPC skambučiu
Su mūsų išplėstiniais RPC metodais ir eth_getNFTBalances
Pabaigos taškas, jūs galite sklandžiai gauti NFT balansus trimis paprastais veiksmais:
- Prisiregistruokite su „Moralis“ ir nustatykite mazgą.
- Parašykite scenarijaus skambutį
eth_getNFTBalances
. - Paleiskite kodą.
Tačiau prieš pradėdami eiti, turite tvarkyti keletą išankstinių sąlygų.
Būtinos sąlygos
Prieš pradėdami vadovauti, įsitikinkite, kad turite taip:
1 žingsnis: Prisiregistruokite su „Moralis“ ir nustatykite mazgą
Paspauskite mygtuką „Pradėti nemokamai“ viršuje dešinėje ir prisiregistruokite gauti nemokamą sąskaitą su „Moralis“:

Prisijunkite, eikite į skirtuką „Mazgai“ ir spustelėkite „+ Sukurti mazgą“, kad nustatytumėte mazgą:

Pasirinkite „Ethereum“, po kurio eina „MainNet“, ir spustelėkite „CONT CONT NODE“:

Nukopijuokite ir saugokite vieną iš savo mazgo URL, nes jums to reikės kitame veiksme:

2 žingsnis: parašykite scenarijaus skambutį eth_getNFTBalances
Sukurkite aplanką savo integruotoje plėtros aplinkoje (IDE), atidarykite naują terminalą ir paleiskite šią komandą, kad inicijuotumėte naują projektą:
npm init
Įdiekite reikiamas priklausomybes naudodamiesi šiomis terminalo komandomis:
npm install node-fetch --save npm install moralis @moralisweb3/common-evm-utils
Atidarykite failą „Package.json“ ir pridėkite "type": "module"
į sąrašą:

Nustatykite naują failą „Index.js“ ir pridėkite šį kodą:
import fetch from 'node-fetch'; const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json' }, body: JSON.stringify({ "jsonrpc": "2.0", "id": 1, "method": "eth_getNFTBalances", "params": ( { "address": "0xDc597929101c2DE50c97D43C8EA3A372Bf55fdc0", "limit": 10, } ) }) }; fetch('YOUR_NODE_URL', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Pakeiskite YOUR_NODE_URL
Su URL nukopijavote pirmojo etapo metu ir sukonfigūruokite address
parametras, kuris atitiktų jūsų užklausą:

3 žingsnis: paleiskite kodą
Paleiskite šią terminalo komandą savo projekto pagrindiniame aplanke, kad įvykdytumėte scenarijų:
node index.js
Vykdydami scenarijų, gausite daugybę visų žetonų, priklausančių nurodytam adresui. Atsakymas yra praturtintas metaduomenimis, adresais, simboliais, rinkimo duomenimis ir dar daugiau kiekvienam elementui. Štai atsakymas į pavyzdį:
{ jsonrpc: '2.0', id: 1, result: { //... result: ( { amount: '1', token_id: '1919', token_address: '0xbd3531da5cf5857e7cfaa92426877b022e612cf8', contract_type: 'ERC721', owner_of: '0xdc597929101c2de50c97d43c8ea3a372bf55fdc0', last_metadata_sync: '2024-08-25T23:35:51.384Z', last_token_uri_sync: '2024-08-25T23:35:50.893Z', metadata: '{"attributes":({"trait_type":"Background","value":"Mint"},{"trait_type":"Skin","value":"Olive Green"},{"trait_type":"Body","value":"Turtleneck Pink"},{"trait_type":"Face","value":"Eyepatch"},{"trait_type":"Head","value":"Wizard Hat"}),"description":"A collection 8888 Cute Chubby Pudgy Penquins sliding around on the freezing ETH blockchain.","image":"ipfs://QmNf1UsmdGaMbpatQ6toXSkzDpizaGmC9zfunCyoz1enD5/penguin/1919.png","name":"Pudgy Penguin #1919"}', block_number: '19754671', block_number_minted: null, name: 'PudgyPenguins', symbol: 'PPG', token_hash: 'cbd8bd0901f422afb88e76615e3d2a1a', token_uri: 'https://ipfs.moralis.io:2053/ipfs/bafybeibc5sgo2plmjkq2tzmhrn54bk3crhnc23zd2msg4ea7a4pxrkgfna/1919', minter_address: null, verified_collection: true, possible_spam: false, collection_logo: 'https://i.seadn.io/gae/yNi-XdGxsgQCPpqSio4o31ygAV6wURdIdInWRcFIl46UjUQ1eV7BEndGe8L661OoG-clRi7EgInLX4LPu9Jfw4fq0bnVYHqg7RFi?w=500&auto=format', collection_banner_image: 'https://i.seadn.io/gcs/files/8a26e3de0f309089cbb1e5ab969fc0bc.png?w=500&auto=format' }, //... ) } }
Be to
Piniginės balanso NFT balansas yra tik vienas iš daugelio dalykų, kuriuos galite padaryti naudodamiesi mūsų išplėstiniais RPC metodais. Iš esmės pasinerkime giliau į tris kitus metodus:
eth_getTransactions
eth_getDecodedTransactions
eth_getTokenBalances
eth_getTransactions
Su eth_getTransactions
Metodas, dabar galite lengvai gauti piniginės operacijas naudodami RPC mazgus tik vienu skambučiu. Tai reiškia, kad jums nebereikia jaudintis dėl begalinių užklausų, suteikiant jums žymiai supaprastintą kūrėjų patirtį. Štai pavyzdys, rodantis metodą, veikiantį:
import fetch from 'node-fetch'; const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json' }, body: JSON.stringify({ "jsonrpc": "2.0", "id": 1, "method": "eth_getTransactions", "params": ( { "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", "limit": 100, } ) }) }; fetch('YOUR_NODE_URL', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Mainais už aukščiau pateikto scenarijaus paleidimą gausite ankstesnių vietinių operacijų piniginės sąrašą. Be to, kiekviena operacija yra praturtinta laiko žymomis, adresų etiketėmis, dujų kainomis ir dar daugiau. Štai kaip tai gali atrodyti:
{ //... result: ( { hash: '0xd89b02f289a08ae7b2feead06031fec20777bad8b73fc8d853f9040bc423a6c7', nonce: '0', transaction_index: '142', from_address: '0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f', from_address_label: '', to_address: '0xdac17f958d2ee523a2206206994597c13d831ec7', to_address_label: 'Tether USD (USDT)', value: '0', gas: '207128', gas_price: '17020913648', input: '0xa9059cbb00000000000000000000000028c6c06298d514db089934071355e5743bf21d6000000000000000000000000000000000000000000000000000000017a1df1700', receipt_cumulative_gas_used: '8270587', receipt_gas_used: '41309', receipt_contract_address: null, receipt_root: null, receipt_status: '1', block_timestamp: '2023-01-22T15:00:11.000Z', block_number: '16463098', block_hash: '0x2439330d0a282f9a6464b0aceb9f766ac4d7b050c048b4a1322b48544c61e01d', transaction_fee: '0.000703116921885232' }, //... ) } }
eth_getDecodedTransactions
eth_getDecodedTransactions
Metodas leidžia lengvai gauti dekoduotą piniginės istoriją naudojant RPC mazgą. Pateikdami tik vieną užklausą, galite sklandžiai išsiųsti visą piniginės istoriją, įskaitant vietines operacijas, ERC-20 pervedimus, NFT pervedimus ir dar daugiau. Štai scenarijus, rodantis, kaip eth_getDecodedTransactions
Darbai praktikoje:
import fetch from 'node-fetch'; const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json' }, body: JSON.stringify({ "jsonrpc": "2.0", "id": 1, "method": "eth_getDecodedTransactions", "params": ( { "address": "0xda74Ac6b69Ff4f1B6796cdDf61fBDd4A5f68525f", } ) }) }; fetch('YOUR_NODE_URL', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Mainais už tai, kad įvykdėte aukščiau esantį scenarijų, gausite visą piniginės istoriją. Be to, kiekviena operacija yra praturtinta kategorijų žymomis, įvykių santraukomis, adresų etiketėmis ir kita naudinga informacija. Štai atsakymas į pavyzdį:
{ //... "result": ( { "block_hash": "0x660274d577cd20b0b82c1bff5f3c5641ba6027544e005f9256d5add9c7447920", "block_number": "19868695", "block_timestamp": "2024-05-14T14:00:23.000Z", "from_address": "0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f", "from_address_label": null, "from_address_entity": null, "from_address_entity_logo": null, "to_address": "0xdac17f958d2ee523a2206206994597c13d831ec7", "to_address_label": "Tether USD (USDT)", "to_address_entity": null, "to_address_entity_logo": null, "gas": "55331", "gas_price": "13623172301", "hash": "0xc565260238f59fc3f35b74f3011375c7d637db9b075f77d342c30d19f946272e", "nonce": "14", "receipt_cumulative_gas_used": "13917979", "receipt_gas_used": "41309", "receipt_status": "1", "transaction_fee": "0.000562759624582009", "transaction_index": "75", "value": "0", "receipt_contract_address": null, "nft_transfers": (), "erc20_transfers": ( { "token_name": "Tether USD", "token_symbol": "USDT", "token_logo": "https://logo.moralis.io/0x1_0xdac17f958d2ee523a2206206994597c13d831ec7_3282f332c2ac2948929f01fe7d921c51", "token_decimals": "6", "from_address": "0xda74ac6b69ff4f1b6796cddf61fbdd4a5f68525f", "from_address_entity": null, "from_address_entity_logo": null, "from_address_label": null, "to_address": "0x28c6c06298d514db089934071355e5743bf21d60", "to_address_label": "Binance 14", "to_address_entity": "Binance", "to_address_entity_logo": "https://entities-logos.s3.us-east-1.amazonaws.com/binance.png", "address": "0xdac17f958d2ee523a2206206994597c13d831ec7", "log_index": 338, "value": "50000000000", "possible_spam": false, "verified_contract": true, "direction": "send", "value_formatted": "50000" } ), "method_label": "transfer", "native_transfers": (), "summary": "Sent 50,000 USDT to Binance 14", "possible_spam": false, "category": "token send" }, //... } ) }
eth_getTokenBalances
Su moralis “ eth_getTokenBalances
Metodas, naudodami RPC mazgus galite be vargo gauti ERC-20 žetonų balansus. Tai reiškia, kad jums nebereikia pateikti kelių užklausų ir patys susiuvami duomenis. Vienas užklausa ir jūs gausite visą jums reikalingą informaciją. Štai pavyzdys, rodantis metodą, veikiantį:
import fetch from 'node-fetch'; const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json' }, body: JSON.stringify({ "jsonrpc": "2.0", "id": 1, "method": "eth_getTokenBalances", "params": ( { "address": "0xcB1C1FdE09f811B294172696404e88E658659905", } ) }) }; fetch('YOUR_NODE_URL', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Paskambinus aukščiau esančiam scenarijui, pateikiami nurodyto adreso ERC-20 ženklo balansai. Be to, visi sąraše esantys žetonai bus praturtinti logotipais, dešimtainėmis dešimtainėmis, šlamšto rodikliais, miniatiūromis ir dar daugiau. Štai atsakymas į pavyzdį:
{ //... result: ( { token_address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2', name: 'Wrapped Ether', symbol: 'WETH', decimals: 18, logo: 'https://logo.moralis.io/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca', thumbnail: 'https://logo.moralis.io/0x1_0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2_a578c5277503e547a072ae32517254ca', balance: '10000000000000000', possible_spam: false, verified_contract: true, total_supply: '2746607222348759943423350', total_supply_formatted: '2746607.22234875994342335', percentage_relative_to_total_supply: 3.64085549569e-7 }, //... ) }
Norėdami sužinoti daugiau apie visus mūsų metodus, apsilankykite oficialiame išplėstiniame RPC metodų dokumentacijos puslapyje.
Nardymas giliau į „Moralis“ „Web3“ API
„Moralis“ yra pirmaujanti pramonės „Web3“ duomenų teikėja, be mūsų išplėstinių RPC metodų, mes siūlome išsamų „Web3“ API rinkinį, pavyzdžiui, „Wallet API“, „Token API“, „Stream“ API ir dar daugiau. Naudodamiesi „Moralis“, jūs gaunate visus kriptovaliutų duomenis vienoje vietoje.

Bet kas daro mūsų „Web3“ API unikalią?
- Vienas skambutis – visi duomenys: Mūsų API yra orientuotos į rezultatus, teikiant daugiau duomenų su mažiau užklausų. Gaukite „Token“ pusiausvyrą, visa piniginės istorija, NFT metaduomenys ir daug daugiau su vienu skambučiu.
- Kryžminė grandinė: „Moralis“ siūlo visišką pagrindinių grandinių paritetą, įskaitant „Ethereum“, daugiakampį, optimizmą, BSC, bazę ir kitus.
- Saugumas ir patikimumas: „Moralis“ yra 2 tipo „Soc 2“ sertifikuotas, pabrėžiantis mūsų įsipareigojimą užtikrinti įmonės kokybės saugumą ir patikimumą.
Norėdami sužinoti daugiau apie mūsų pagrindinių plėtros įrankių rinkinį, pasinerkite į tris mūsų garsias API!
Piniginės API
„Moralis“ piniginės API yra pagrindinis įrankis, jei norite sukurti pinigines ar integruoti piniginės funkcijas į savo „DAPP“. Naudodamiesi šia „Premier“ sąsaja, galite be vargo gauti visą piniginės istoriją, žetonų balansus, NFT balansus, grynąją vertę, pelningumą ir dar daugiau.

Norėdami pabrėžti šio įrankio galią, pažvelkime į vieną iš mūsų veiksmo galinių taškų. Pavyzdžiui, taip lengva gauti piniginės grynąją vertę:
import fetch from 'node-fetch'; const options = { method: 'GET', headers: { accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY' }, }; fetch('https://deep-index.moralis.io/api/v2.2/wallets/0x1f9090aaE28b8a3dCeaDf281B0F12828e676c326/net-worth', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Mainais už tai, kad paskambinote aukščiau esančiam scenarijui, gausite bendrą nurodytos piniginės grynąją vertę kartu su atskirais grandinių gedimais. Štai atsakymas į pavyzdį:
{ total_networth_usd: '9906.41', chains: ( { chain: 'eth', native_balance: '3138317588449827590', native_balance_formatted: '3.13831758844982759', native_balance_usd: '8069.70', token_balance_usd: '1836.70', networth_usd: '9906.41' } ) }
Taigi, jei jūs ieškote įspūdingų funkcijų, aukščiausio lygio lankstumo ir neprilygstamo mastelio, būtinai peržiūrėkite „Wallet“ API!
Žetonų API
„Token API“ yra jūsų „ERC-20“ duomenų įrankis. Ši „Premier“ sąsaja apima visus žetonus visose didžiausiose grandinėse, įskaitant tokius stabilius kaip USDC, meme monetas, tokias kaip „Shiba Inu“, ir viskas, kas yra tarp jų.

Naudodamiesi „Token API“, galite sklandžiai išsiųsti žetonų likučius, kainas, pervedimus, metaduomenis ir dar daugiau. Norėdami parodyti šio įrankio prieinamumą, pateikiame scenarijų pavyzdį, kuriame parodyta, kaip lengva gauti prieigos rakto kainą:
import fetch from 'node-fetch'; const options = { method: 'GET', headers: { accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY' }, }; fetch('https://deep-index.moralis.io/api/v2.2/erc20/0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0/price?chain=eth&include=percent_change', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Mainais už tai, kad paskambinote aukščiau esančiam scenarijui, gausite prieigos rakto kainą tiek vietine valiuta, tiek USD. Štai kaip tai gali atrodyti:
{ tokenName: 'Matic Token', tokenSymbol: 'MATIC', tokenLogo: 'https://logo.moralis.io/0x1_0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0_89c931b3fcf74fe39db7a195bf8a3aa5', tokenDecimals: '18', nativePrice: { value: '172371569340575', decimals: 18, name: 'Ether', symbol: 'ETH', address: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2' }, usdPrice: 0.44344021067602557, usdPriceFormatted: '0.443440210676025551', exchangeName: 'Uniswap v3', exchangeAddress: '0x1F98431c8aD98523631AE4a59f267346ea31F984', tokenAddress: '0x7d1afa7b718fb893db30a3abc0cfc608aacfebb0', priceLastChangedAtBlock: '20634460', blockTimestamp: '1724937179000', possibleSpam: false, verifiedContract: true, pairAddress: '0x290a6a7460b308ee3f19023d2d00de604bcf5b42', pairTotalLiquidityUsd: '1592811.47', '24hrPercentChange': '-1.1406370639269006', securityScore: 55 }
Jei norite kurti tokias platformas kaip DEX, „Token Explorers“ ar kiti panašūs projektai, būtinai pradėkite naudoti „Token API“!
NFT API
„Moralis“ NFT API yra pagrindinė NFT duomenų sąsaja, apimanti daugiau nei tris milijonus NFT kolekcijų ir skaičiuojant visose pagrindinėse grandinėse, įskaitant „Ethereum“, „Polygon“, „BSC“, „Base“ ir daugelį kitų. Naudodamiesi šia „Premier“ sąsaja, jums reikia tik atskirų kodo eilučių, kad gautumėte NFT balansus, metaduomenis, kainas ir kt.

Norėdami pabrėžti šio įrankio galią, peržiūrėkite toliau pateiktą scenarijaus pavyzdį, parodydami, kaip lengva gauti NFT metaduomenis:
import fetch from 'node-fetch'; const options = { method: 'GET', headers: { accept: 'application/json', 'X-API-Key': 'YOUR_API_KEY’ }, }; fetch('https://deep-index.moralis.io/api/v2.2/nft/0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB/200?chain=eth', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Mainais už aukščiau pateikto kodo vykdymą gausite nurodytų NFT metaduomenis, praturtintus adresais, kolekcijos duomenimis, retumo rodikliais ir dar daugiau. Štai kaip tai gali atrodyti:
{ amount: '1', token_id: '200', token_address: '0xb47e3cd837ddf8e4c57f05d70ab865de6e193bbb', contract_type: 'CRYPTOPUNKS', owner_of: '0xa858ddc0445d8131dac4d1de01f834ffcba52ef1', last_metadata_sync: '2024-08-29T17:03:32.616Z', last_token_uri_sync: '2024-08-29T17:03:32.302Z', metadata: '{"image":"https://www.larvalabs.com/cryptopunks/cryptopunk200.png","name":"CryptoPunk 200","attributes":("Wild Hair"),"description":"Female"}', block_number: '14401717', block_number_minted: null, name: 'CRYPTOPUNKS', symbol: 'Ͼ', token_hash: 'dec72aa6108829bae90dc826a9204c24', token_uri: 'Invalid uri', minter_address: null, rarity_rank: 469, rarity_percentage: 4.69, rarity_label: 'Top 5%', verified_collection: true, possible_spam: false, collection_logo: 'https://i.seadn.io/gae/BdxvLseXcfl57BiuQcQYdJ64v-aI8din7WPk0Pgo3qQFhAUH-B6i-dCqqc_mCkRIzULmwzwecnohLhrcH8A9mpWIZqA7ygc52Sr81hE?w=500&auto=format', collection_banner_image: 'https://i.seadn.io/gae/48oVuDyfe_xhs24BC2TTVcaYCX7rrU5mpuQLyTgRDbKHj2PtzKZsQ5qC3xTH4ar34wwAXxEKH8uUDPAGffbg7boeGYqX6op5vBDcbA?w=500&auto=format' }
Naudodamiesi NFT API galite sklandžiai integruoti NFT duomenis į savo NFT rinkos, „Web3“ žaidimą ar kitą platformą, kuriai reikia šios informacijos!
Jei norite ištirti visas mūsų „Premier“ sąsajas, apsilankykite mūsų oficialiame „Web3“ API puslapyje!
Santrauka: Kaip gauti NFT balansus su vienu RPC skambučiu
Užklausa dėl piniginės NFT likučių gali būti daug laiko reikalaujantis ir daug išteklių reikalaujantis procesas. Taikant įprastus metodus, reikia kelių užklausų ir daug rankinių duomenų kaupimo, todėl tai yra varginanti užduotis. Laimei, dabar jūs turite galimybę supaprastinti savo kūrėjų patirtį naudojant „Moralis“ išplėstinius RPC metodus.

Mūsų išplėstiniai RPC metodai daro užklausų dekoduotus duomenis, naudojant RPC mazgus. Naudodamiesi vienkartinėmis RPC užklausomis, dabar galite gauti NFT balansus, žetonų likučius, iššifruotas operacijas, žetonų kainas ir dar daugiau.
Pavyzdžiui, apsilankykite mūsų eth_getNFTBalances
Veiksmo metodas, parodantis, kaip lengva gauti NFT balansus tik su vienu RPC skambučiu:
import fetch from 'node-fetch'; const options = { method: 'POST', headers: { accept: 'application/json', 'content-type': 'application/json' }, body: JSON.stringify({ "jsonrpc": "2.0", "id": 1, "method": "eth_getNFTBalances", "params": ( { "address": "0xDc597929101c2DE50c97D43C8EA3A372Bf55fdc0", "limit": 10, } ) }) }; fetch('YOUR_NODE_URL', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));
Mainais už tai, kad paskambinote aukščiau esančiam scenarijui, gausite visą nurodytos piniginės NFT balansą, praturtintą metaduomenų, kolekcijos duomenimis ir dar daugiau. Štai kaip tai gali atrodyti:
{ jsonrpc: '2.0', id: 1, result: { //... result: ( { amount: '1', token_id: '1919', token_address: '0xbd3531da5cf5857e7cfaa92426877b022e612cf8', contract_type: 'ERC721', owner_of: '0xdc597929101c2de50c97d43c8ea3a372bf55fdc0', last_metadata_sync: '2024-08-25T23:35:51.384Z', last_token_uri_sync: '2024-08-25T23:35:50.893Z', metadata: '{"attributes":({"trait_type":"Background","value":"Mint"},{"trait_type":"Skin","value":"Olive Green"},{"trait_type":"Body","value":"Turtleneck Pink"},{"trait_type":"Face","value":"Eyepatch"},{"trait_type":"Head","value":"Wizard Hat"}),"description":"A collection 8888 Cute Chubby Pudgy Penquins sliding around on the freezing ETH blockchain.","image":"ipfs://QmNf1UsmdGaMbpatQ6toXSkzDpizaGmC9zfunCyoz1enD5/penguin/1919.png","name":"Pudgy Penguin #1919"}', block_number: '19754671', block_number_minted: null, name: 'PudgyPenguins', symbol: 'PPG', token_hash: 'cbd8bd0901f422afb88e76615e3d2a1a', token_uri: 'https://ipfs.moralis.io:2053/ipfs/bafybeibc5sgo2plmjkq2tzmhrn54bk3crhnc23zd2msg4ea7a4pxrkgfna/1919', minter_address: null, verified_collection: true, possible_spam: false, collection_logo: 'https://i.seadn.io/gae/yNi-XdGxsgQCPpqSio4o31ygAV6wURdIdInWRcFIl46UjUQ1eV7BEndGe8L661OoG-clRi7EgInLX4LPu9Jfw4fq0bnVYHqg7RFi?w=500&auto=format', collection_banner_image: 'https://i.seadn.io/gcs/files/8a26e3de0f309089cbb1e5ab969fc0bc.png?w=500&auto=format' }, //... ) } }
Tai viskas; Norint gauti NFT balansą naudojant RPC mazgus, nebūtinai turi būti sudėtingiau.
Jei jums patiko šis vadovėlis, kaip gauti NFT balansus su vienu RPC skambučiu, apsvarstykite galimybę apsilankyti daugiau turinio čia, tinklaraštyje. Pvz., Naršykite mūsų „blockchain“ adresų žymėjimo API.
Be to, jei norite patys pradėti naudoti mūsų išplėstinius RPC metodus, nepamirškite užsiregistruoti su „Moralis“. Galite nemokamai sukurti paskyrą, suteikdami prieigą prie visų mūsų „Premier“ kūrimo įrankių.