KESİNLİK
BLOK YÜKSEKLİĞİ
AKTİF DOĞRULAYICILAR

Solidus Zincirini Kendiniz Sorgulayın: Bir JSON-RPC Anlatımı

Kayıt yok, API anahtarı yok, arada gezgin arayüzü yok. Bu, açık bir uç noktaya karşı, az önce çalıştırılmış tek bir curl komutu:

curl -X POST https://rpc.solidus.network \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "solidus_getLatestBlock",
    "params": [],
    "id": 1
  }'

Gerçek yanıt:

{"jsonrpc":"2.0","id":1,"result":{"height":77278,"round":1718,"hash":"6b6f0117cf104690ace7af7555846c17f44d5a508ba8d76d336f13f1b9a2453c","parent_hash":"411e6c220e5df28b5eb87023cbf7b69d37f6939508828b2e3469ed641969f81d","state_root":"9045d9ed5ab3f444bc59c8899629031f640d48ce74d29a7aaa17b525d54483f1","transactions_root":"0000000000000000000000000000000000000000000000000000000000000000","timestamp_ms":1784357243969,"tx_count":0,"proposer":"2VnFvB9X8BW5QxDAD1wJjjd8AJvT","transactions":[]}}

Kendiniz yeniden çalıştırın, yükseklik ilerlemiş olacaktır. Henüz bir bloğun alan alan açıklandığını görmediyseniz ya da bir DID'nin çözümlenmesini izlemediyseniz, bir Solidus bloğu nasıl okunur ve bir DID'yi kendiniz çözümleyin sayfalarından başlayın; bu sayfa, verinin biçimini gördüğünüzü ve artık doğrudan düğümle konuşmak istediğinizi varsayar.

JSON-RPC gerçekte nedir

JSON-RPC Solidus'un icat ettiği bir şey değildir. Hafif ve taşıma katmanından bağımsız bir uzak yordam çağrısı biçimidir: bir yöntemi ve parametrelerini adlandıran küçük bir JSON nesnesi gönderin, sonuç ya da hata taşıyan bir JSON nesnesi geri alın. 2.0 sürümü 2010'dan beri jsonrpc.org adresinde açık bir topluluk şartnamesi olarak sürdürülmektedir ve Ethereum istemcilerinin eth_* yöntemleri olarak açtığı hat biçiminin aynısıdır. Solidus şartnameyi olduğu gibi kullanır; Solidus'a özgü tek şey, arkasında hangi yöntemlerin durduğudur.

eth_getBalance aramaya gitmeden önce bilinmeye değer bir ayrım: rpc.solidus.network, Ethereum uyumlu bir eth_* ad alanını değil, Solidus'a özgü yöntemleri açar. MetaMask ya da Foundry gibi araçlar için eth_* biçimli bir yüzey, sistemin ayrı ve henüz dağıtılmamış bir parçası olan EVM Alt Ağı için planlanmıştır; bu uç noktanın bugün sağladığı bir şey değildir.

Ona gerçekte ne sorabilirsiniz

Yukarıda gördüğünüz yöntem kümesi, yani blok verisi, bir kategoridir. Diğerleri, gerçek ve canlı uç noktaya karşı yeniden doğrulanmış hâliyle:

  • Blok ve zincir verisi, yani son blok, yüksekliğe göre blok, yukarıdaki yanıtta gösterilen alanlar.
  • DID çözümlemesi, solidus_didResolve, DID çözümleme anlatımının kullandığı yöntemin aynısı; bir did:solidus tanımlayıcısını tam DID Belgesine çevirir.
  • İşlem gönderimi, bir cüzdanın ya da SDK'nın imzalı bir işlemi ağa yayınlamak için kullandığı yazma yolu.

Bugünkü dürüst biçimi budur. Peşine düşülecek bir eth_getBalance eşdeğeri de yoktur: bir did:solidus çıpası kayıtlı bir kimliktir, değer tutan bir hesap değil, dolayısıyla yukarıdaki yöntemler bunun için bir bakiye araması içermez; o ayrıştırma yürütücü düzeyinde uygulanır ve yalnızca RPC yüzeyini değil mekanizmayı isterseniz kendi sayfasında, bir DID neden bakiye tutamaz sayfasında ele alınır.

Ücretsiz kademe şartları, tam olarak alıntılanmış

Gezginin kendi gezinme çubuğu bunu açıkça belirtir: 12 endpoints, 100K req/day free. Yayımlandığı hâliyle sayı budur, yukarı yuvarlanmamıştır. Üstüne adil kullanım hız sınırlaması uygulanır ve ayrılmış limitlerle kademeli erişim ana ağ yol haritasındadır; bunların hiçbiri henüz mevcut değildir. Burada gösterilen ikisinin değil tam yöntem listesi için gezginin /api referans sayfasına bakın. Bu sayfa iki komutun anlatımı, o sayfa ise kataloğudur.

İkinci bir işlenmiş örnek

İşte aynı disiplinin bir blok yerine bir DID'ye uygulanmış hâli: DID Çözümlemesi lexicon girdisinin belgelediği tam çağrı, onaylanmış tek örnek DID'ye karşı çalıştırılmış:

curl -X POST https://rpc.solidus.network \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "solidus_didResolve",
    "params": ["did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J"],
    "id": 1
  }'

Gerçek yanıt:

{"jsonrpc":"2.0","id":1,"result":{"context":"https://www.w3.org/ns/did/v1","id":"did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J","controller":"did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J","verification_method":[{"controller":"did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J","id":"did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J#key-0","publicKeyHex":"4ac407d14cab5627f69f0b3067a3cd6c340c610c3c414f367b3bdac1343c2044","type":"Ed25519VerificationKey2020"}],"authentication":["did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J#key-0"],"assertion_method":["did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J#key-0"],"key_agreement":[],"capability_invocation":["did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J#key-0"],"capability_delegation":["did:solidus:testnet:46Hzv2Ek4MXwj1Kenvix4tWCPr1J#key-0"],"service":[],"active":true,"created_ms":1783972405492,"updated_ms":1783972405492,"version_id":"32352473f6c8399bd3612e621269b0f8438b884854212f3b7a5acba60daac012","recovery_policy":null,"recovery_nonce":0}}

Hiç demirlenmemiş bir DID koyun, bir hata yerine "result": null alırsınız; ki bu kendi başına küçük bir derstir: uydurulmuş bir tanımlayıcı ile eksik olan bir tanesi dışarıdan birebir aynı görünür.

Aynı örüntünün art arda birkaç çağrı boyunca zincirlendiğini, tamamen farklı bir ağdaki zincir üstü bir varlığın ardında duran bir DID'nin çözümlendiğini görmek isterseniz, sonraki sayfa bir AI ajanının kimliğini adım adım anlatır: zincir üstünde çözümlenmiş.

Sizinle bu iki yanıt arasında hiçbir şey yok: pano yok, hesap yok, onay adımı yok. Blok gezgininin ve DID çözümleyicisinin bir arayüz üzerinden gösterdiği özelliğin aynısıdır; burada aynı zinciri, önünde hiçbir şey olmadan aynı soruları yanıtlıyor.

Okumaya devam edin

Solidus Zincirini Kendiniz Sorgulayın: Bir JSON-RPC Anlatımı · Solidus — Solidus Explorer