Bir Fan Token transferlerini nasıl takip edersiniz

Chiliz Chain üzerindeki Fan Token™ hareketlerini takip etmek, favori tokenlarınızın etkinliğini izlemek için harika bir yoldur. Bunu potansiyel bir gösterge panosu oluşturmanın temeli olarak kullanarak, hangi tokenların popüler olduğunu ve hangilerinin olmadığını gösteren verileri kolaylaştırabilirsiniz.

The Graph kullanarak bunu nasıl yaparsınız?

The Graph blok zincirini manuel olarak taramadan Chiliz Chain Mainnet veya Spicy Testnet üzerindeki Fan Token™ hareketlerini izlemek için özellikle yararlıdır. Alt grafikler olarak bilinen özel API'ler aracılığıyla akıllı sözleşme verilerini sorgulamanın kolay bir yolunu sunar.

Örneğin The Graph'ı PSG Fan Token™ transferlerini izlemek için nasıl kullanabileceğimize bakalım...

PSG Token'ını Chiliz üzerinde indeksleme

1. Bir altgraf projesi başlatın

Subgraph Studio'da bir altgraf oluşturun

şuraya gidin: Subgraph Studio ve cüzdanınızı bağlayın. Cüzdanınız bağlandıktan sonra “Create a Subgraph”e tıklayarak başlayabilirsiniz.

Bir ad seçerken Başlık Biçimi (Title Case) kullanmanız önerilir: “Subgraph Name Chain Name.”

Ardından altgrafınızın sayfasına yönlendirileceksiniz. İhtiyacınız olan tüm CLI komutları sayfanın sağ tarafında görünür (biraz aşağı kaydırmanız gerekebilir):

The Graph CLI'yı yükleyin

Yerel makinenizde aşağıdakileri çalıştırın:

npm install -g @graphprotocol/graph-cli

Altgrafınızı Başlatın

Bunu altgraf sayfanızdan kopyalayarak, özel altgraf slug'ınızı dahil edebilirsiniz:

graph init --studio <SUBGRAPH_SLUG>

dotenv --studio etiketi isteğe bağlıdır. Bu örnekte şunu çalıştırdık:

graph init docs-psg-followup-chiliz-chain

Altgrafınız hakkında bazı bilgiler girmeniz istenecek, şöyle:

Sözleşmenizin blok gezgininde doğrulanmış olması gerekir ve CLI otomatik olarak ABI'yi alıp altgrafınızı kuracaktır. Varsayılan ayarlar her olay için bir varlık (entity) oluşturacaktır.

2. Dağıtım & Yayınlama

Subgraph Studio'ya dağıtın

Önce şu komutları çalıştırın:

$ graph codegen
$ graph build

Ardından altgrafınızı yetkilendirmek ve dağıtmak için bunları çalıştırın. Bu komutları, dağıtım anahtarınızı ve altgraf slug'ınızı içerecek şekilde doğrudan Studio'daki altgraf sayfanızdan kopyalayabilirsiniz:

$ graph auth --studio <DEPLOY_KEY>
$ graph deploy --studio <SUBGRAPH_SLUG>

Sizden bir sürüm etiketi (version label) istenecek. v0.0.1 gibi bir şey girebilirsiniz, fakat biçimi seçmede serbestsiniz. Bu işlem tamamlandığında, Studio sayfasında altgrafın senkronize olmaya başladığını göreceksiniz.

Altgrafınızı test edin

Playground bölümünde örnek bir sorgu yaparak altgrafınızı test edebilirsiniz. Details sekmesi size bir API uç noktası gösterecektir. Bu uç noktayı dapp'inizden test etmek için kullanabilirsiniz.

Altgrafınızı The Graph’ın Merkeziyetsiz Ağına Yayınlayın

Altgrafınız üretime hazır olduğunda, bunu merkeziyetsiz ağa yayınlayabilirsiniz. Subgraph Studio'daki altgraf sayfanızda Publish düğmesine tıklayın.

Bu, altgrafınızı Arbitrum One ağında bir NFT olarak yayınlamak için cüzdanınız üzerinden bir işlem tetikleyecektir.

Not: The Graph'ın akıllı sözleşmeleri Chiliz'ten, Ethereum'dan veya başka herhangi bir desteklenen zincir.

Bu altgraf şu adreste bulunabilir ağ üzerinde.

3. Altgrafınızı Sorgulayın

Tebrikler! Artık altgrafınızı merkeziyetsiz ağda sorgulayabilirsiniz!

Merkeziyetsiz ağdaki herhangi bir altgraf için, Explorer sayfasının üst kısmında bulunan altgrafın sorgu URL'sine bir GraphQL sorgusu göndererek sorgulamaya başlayabilirsiniz.

Yukarıdaki PSG Token altgrafı burada yayınlandı.

Bu altgraf için sorgu URL'si şudur:

https://gateway-arbitrum.network.thegraph.com/api/[api-key]/subgraphs/id/7x2xzF58Mr694MiAQxCK6fiXux1vaBQm5SdYhbv1LNGE

Şimdi, bu uç noktaya GraphQL sorguları göndermeye başlamak için kendi API Anahtarınızı (API Key) doldurmanız yeterlidir.

Kendi API Anahtarınızı alma

Subgraph Studio'da sayfanın üst kısmında “API Keys” menüsünü göreceksiniz. Buradan API Anahtarları oluşturabilirsiniz.

Ekler

Örnek Sorgu

Bu sorgu PSG Fan Token™'ın tüm işlemlerini gösterir.

const axios = require('axios');

//the graphql query
const graphqlQuery = `{
  transfers {
    gönderen
    alıcı
    value
    transactionHash
  }
}`;
const queryUrl = 'https://gateway-arbitrum.network.thegraph.com/api/[api-key]/subgraphs/id/7x2xzF58Mr694MiAQxCK6fiXux1vaBQm5SdYhbv1LNGE'

const graphQLRequest = {
  method: 'post',
  url: queryUrl,
  data: {
    query: graphqlQuery,
  },
};

// Send the GraphQL query
axios(graphQLRequest)
  .then((response) => {
    // Handle the response here
    const data = response.data.data
    console.log(data)

  })
  .catch((error) => {
    // Handle any errors
    console.error(error);
  });

Örnek kod

{
  "data": {
    "transfers": [
      {
        "from": "0x26a3e78fa4d2cbebf6b59b2f84b8fb7c61b52d28",
        "to": "0xdca23d02923d01779fb22959bd2575d64eab4535",
        "value": "1500",
        "transactionHash": "0x000309e9cd3f550e8965381bbd83a35c5cee18f26c33a357f9dbb57450d594ea"
      },
//      ...
  }
}

Bunu sorgu URL'sine gönderdiğinizde şu sonucu döndürür:

{
  transfers {
    gönderen
    alıcı
    value
    transactionHash
  }
}

Ek kaynaklar:

  • Altgrafınızı daha iyi performans için nasıl optimize edip özelleştirebileceğinizi keşfetmek için hakkında daha fazla okuyun burada bir altgraf oluşturma.

  • Altgrafınızdan veri sorgulama hakkında daha fazla bilgi için, daha fazlasını okuyun burada.

Last updated

Was this helpful?