Skip to main content
このセクションでは、Injective Name Serviceコントラクトをクエリして.injドメイン名を解決し、逆引きを行う方法を説明します。

InjNameServiceクラスの実装

推奨されるアプローチは、ネームサービスの機能をカプセル化する独自のInjNameServiceクラスを作成することです。これにより、ドメイン解決と逆引きのためのクリーンで再利用可能なインターフェースが提供されます。

InjNameServiceクラスの作成

アプリケーションで使用できる完全な実装を以下に示します:

InjNameServiceクラスの使用方法

スマートコントラクトへの直接クエリ

抽象化レイヤーを使用せずにコントラクトに直接クエリする必要がある場合、以下の個別メソッドを使用できます。

ドメイン解決(正引き)

.injドメイン名をInjectiveアドレスに解決します。

ステップ1:Resolverアドレスの取得

ステップ2:ドメインに対応するアドレスの取得

逆引き(アドレスからドメイン)

Injectiveアドレスをプライマリの.injドメイン名に解決します。
重要: 逆引きの結果は必ず正引きで検証し、名前が元のアドレスに正しく対応していることを確認してください。以下は正引きを使用した検証方法です:
注意: 前述のInjNameServiceクラスを使用している場合、この検証はawait injNameService.fetchInjAddress(name)で簡略化できます。

ベストプラクティス

  1. ドメイン名は必ず正規化する — 処理前にドメイン名を正規化して一貫性を確保します
  2. 逆引きの結果を検証する — 正引きを実行して名前が実際にアドレスに対応していることを確認します
  3. エラーを適切に処理する — すべてのアドレスが.inj名を持つわけではなく、すべての名前が登録されているわけではありません
  4. 適切なネットワーク設定を使用する — 正しいネットワーク(MainnetまたはTestnet)をクエリしていることを確認します
  5. 必要に応じて結果をキャッシュする — 不要なコントラクトクエリを削減します

依存パッケージ

Injective Name Serviceを使用するには、以下のパッケージが必要です:
最終更新日 2026年4月3日