메인 콘텐츠로 건너뛰기

Documentation Index

Fetch the complete documentation index at: https://injectivelabs-mintlify-jp-developers-first-half-1777019423.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

체인에서 Wasm 모듈을 쿼리하는 예제 코드 스니펫입니다.

gRPC 사용

컨트랙트의 계정 잔액 조회. 페이지네이션 파라미터를 전달하여 추가 계정을 조회할 수 있습니다.

import { getNetworkEndpoints, Network } from '@injectivelabs/networks'
import { ChainGrpcWasmApi, PaginationOption } from '@injectivelabs/sdk-ts/client/chain'

const endpoints = getNetworkEndpoints(Network.Testnet)
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc)

const contractAddress = 'inj...'
const pagination = {...} as PaginationOption

const contractAccountsBalance = await chainGrpcWasmApi.fetchContractAccountsBalance({
    contractAddress,
    pagination /* 선택적 페이지네이션 옵션 */
})

console.log(contractAccountsBalance)

컨트랙트 관련 정보 조회

import { ChainGrpcWasmApi } from "@injectivelabs/sdk-ts/client/chain";
import { getNetworkEndpoints, Network } from "@injectivelabs/networks";

const endpoints = getNetworkEndpoints(Network.Testnet);
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc);

const contractAddress = "inj...";

const contractInfo = await chainGrpcWasmApi.fetchContractInfo(contractAddress);

console.log(contractInfo);

컨트랙트 기록 조회

import { ChainGrpcWasmApi } from "@injectivelabs/sdk-ts/client/chain";
import { getNetworkEndpoints, Network } from "@injectivelabs/networks";

const endpoints = getNetworkEndpoints(Network.Testnet);
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc);

const contractAddress = "inj...";

const contractHistory = await chainGrpcWasmApi.fetchContractHistory(
  contractAddress
);

console.log(contractHistory);

스마트 컨트랙트 상태 조회

import { getNetworkEndpoints, Network } from "@injectivelabs/networks";
import { ChainGrpcWasmApi, toBase64 } from "@injectivelabs/sdk-ts/client/chain";

const endpoints = getNetworkEndpoints(Network.Testnet);
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc);

const contractAddress = "inj...";
const query = "...";
const queryFromObject = toBase64({ get_coin: {} });

const contractState = await chainGrpcWasmApi.fetchSmartContractState({
  contractAddress,
  query /* 선택적 문자열 쿼리 - base64이거나 queryFromObject 사용 필수 */,
});

console.log(contractState);

스마트 컨트랙트 원시 상태 조회

import { ChainGrpcWasmApi } from "@injectivelabs/sdk-ts/client/chain";
import { getNetworkEndpoints, Network } from "@injectivelabs/networks";

const endpoints = getNetworkEndpoints(Network.Testnet);
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc);

const contractAddress = "inj...";
const query = "...";
const queryFromObject = toBase64({ get_coin: {} });

const rawContractState = await chainGrpcWasmApi.fetchRawContractState({
  contractAddress,
  query /* 선택적 문자열 쿼리 - base64이거나 queryFromObject 사용 필수 */,
});

console.log(rawContractState);

컨트랙트와 연결된 코드 조회

import { PaginationOption } from '@injectivelabs/sdk-ts/types'
import { ChainGrpcWasmApi } from '@injectivelabs/sdk-ts/client/chain'
import { getNetworkEndpoints, Network } from '@injectivelabs/networks'

const endpoints = getNetworkEndpoints(Network.Testnet)
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc)

const pagination = {...} as PaginationOption


const rawContractState = await chainGrpcWasmApi.fetchRawContractState(
pagination /* 선택적 페이지네이션 옵션 */
)

console.log(rawContractState)

컨트랙트 코드와 연결된 정보 조회

import { ChainGrpcWasmApi } from "@injectivelabs/sdk-ts/client/chain";
import { getNetworkEndpoints, Network } from "@injectivelabs/networks";

const endpoints = getNetworkEndpoints(Network.Testnet);
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc);

const codeId = 1;

const codeDetails = await chainGrpcWasmApi.fetchContractCode(codeId);

console.log(codeDetails);

코드와 연결된 컨트랙트 조회

import { PaginationOption } from '@injectivelabs/sdk-ts/types'
import { getNetworkEndpoints, Network } from '@injectivelabs/networks'
import { ChainGrpcWasmApi } from '@injectivelabs/sdk-ts/client/chain'

const endpoints = getNetworkEndpoints(Network.Testnet)
const chainGrpcWasmApi = new ChainGrpcWasmApi(endpoints.grpc)

const codeId = 1
const pagination = {...} as PaginationOption

const contracts = await chainGrpcWasmApi.fetchContractCodeContracts({
  codeId,
  pagination /* 선택적 페이지네이션 옵션 */
})

console.log(contracts)
Last modified on April 24, 2026