Belirli bir NFT'nin meta verisi nasıl alınır

NFT meta verisi nedir?

NFT meta verisi, bir NFT ile ilişkili özellikleri, nitelikleri ve ek içeriği detaylandıran zincir dışı olarak saklanan tanımlayıcı bilgi kümesidir. Bu ayrıntılar bir resim URL'si, adı, açıklaması ve benzersizliği ve sahipliğiyle ilgili öznitelikler olabilir.

Bunu Moralis ile nasıl yaparsınız

Moralis'in kullanabileceğiniz bir NFT API'si var ve hatta cüzdan geçmişi kullanım durumu için bir kod örneği sağlıyorlar:

Kod örneklerini uyarlamak için Ethereum referansını Chiliz Chain için onların kimliğiyle değiştirin, 0x15b38:

import Moralis from 'moralis';

try {
  await Moralis.start({
    apiKey: "YOUR_API_KEY"
  });

  const response = await Moralis.EvmApi.nft.getNFTMetadata({
    "chain": "0x15b38", // Bu Chiliz Chain Mainnet için.
                        // Spicy Testnet için "0x15b32" kullanın.
    "format": "decimal",
    "normalizeMetadata": true,
    "mediaItems": false,
    "address": "0xYourNFTContractAddress",
    "tokenId": "1"
  });

  console.log(response.raw);
} catch (e) {
  console.error(e);
}

Bunu Tatum ile nasıl yaparsınız

Tatum'ın, kullanabileceğimiz bir blok zinciri soyutlama aracına ait bir NFT alt modülü var ve meta veri alma kullanım durumu için bir kod örneği bile sağlıyorlar:

Kod örneklerini uyarlamak için Ethereum referansını Chiliz Chain ile değiştirin:

import {TatumSDK, Network, Chiliz, ResponseDto, NftTokenDetail} from '@tatumio/tatum'

const tatum = await TatumSDK.init<Chiliz>({network: Network.CHILIZ})

const metadata: ResponseDto<NftTokenDetail|null> = await tatum.nft.getNftMetadata({
  tokenAddress: '0xYourNFTContractAddress', // koleksiyonunuzla değiştirin
  tokenId: '1'
})

console.log(metadata.data)

Bunu thirdweb ile nasıl yaparsınız

thirdweb'in belgelerinin barındırdığı kaynak koddan ilham alabiliriz:

Meta veriyi almak için bunu koda nasıl uyarlayabileceğimiz şöyle:

const { ThirdwebSDK } = require("@thirdweb-dev/sdk");

const sdk = new ThirdwebSDK("https://rpc.chiliz.com");
const nftContractAddress = "0xYourNFTContractAddress";
const tokenId = "YourTokenID";

async function getNFTMetadata() {
  try {
    const nftContract = await sdk.getNFTCollection(nftContractAddress);
    const nftMetadata = await nftContract.get(tokenId);
    console.log(`NFT ${tokenId} meta verisi:`, nftMetadata);
  } catch (error) {
    console.error("NFT meta verisi alınırken hata:", error);
  }
}

getNFTMetadata();

Nodit ile nasıl yapılır

Nodit aşağıdaki kod örneğini sağlar dokümanlarında:

const url = 'https://web3.nodit.io/v1/chiliz/mainnet/nft/getNftMetadataByTokenIds';
const options = {
  method: 'POST',
  headers: {
    accept: 'application/json',
    'content-type': 'application/json',
    'X-API-KEY': 'nodit-demo'
  },
  body: JSON.stringify({
    tokens: [
      {contractAddress: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D', tokenId: '1'},
      {contractAddress: '0xBC4CA0EdA7647A8aB7C2061c2E118A18a936f13D', tokenId: '2'}
    ]
  })
};

fetch(url, options)
  .then(res => res.json())
  .then(json => console.log(json))
  .catch(err => console.error(err));

Last updated

Was this helpful?