subxt

subxt 라이브러리를 사용하면 원격 프로시저 호출을 통해 Substrate 노드에 트랜잭션을 제출할 수 있습니다. subxt 라이브러리를 사용하기 전에 독립적인 subxt 명령 줄 인터페이스를 사용하여 트랜잭션을 제출할 대상으로 사용할 Substrate 노드의 메타데이터를 다운로드할 수 있습니다. subxt-cli 도구를 사용하면 subxt 라이브러리를 사용하는 데 중요한 두 가지 핵심 작업을 수행할 수 있습니다:

  • subxt-cli 도구를 사용하여 대상 Substrate 노드에서 메타데이터를 다운로드할 수 있습니다.

  • subxt-cli 도구를 사용하여 대상 Substrate 노드의 메타데이터에서 런타임 API 코드를 생성할 수 있습니다.

subxt 라이브러리와 subxt-cli 도구는 메타데이터 v14 이상을 사용하는 모든 노드에 사용할 수 있습니다. subxt 라이브러리의 사용 예는 examples 폴더를 참조하십시오.

설치

subxt-cli를 설치하려면:

  1. 필요한 경우 터미널 셸을 엽니다.

  2. 필요한 경우 Rust 컴파일러와 툴체인이 설치되어 있는지 확인합니다.

  3. 다음 명령을 사용하여 필요한 패키지를 다운로드합니다: cargo install subxt-cli

기본 명령 사용법

subxt 명령을 실행하는 기본 구문은 다음과 같습니다:

subxt <SUBCOMMAND>

subxt가 노드를 로컬에서 실행 중이거나 대상 체인을 지정해야만 subxt가 노출하는 명령을 사용할 수 있습니다. 메타데이터가 이미 제공된 경우 노드를 실행하지 않고 codegen 하위 명령을 사용할 수 있습니다.

플래그

subxt 명령과 함께 다음 선택적 플래그를 사용할 수 있습니다.

플래그설명

-h, --help

사용법 정보 표시

-V, --version

버전 정보 표시

하위 명령

subxt 명령 줄 인터페이스와 함께 다음 하위 명령을 사용할 수 있습니다.

명령어설명

codegen

메타데이터에서 런타임 API 클라이언트 코드를 생성합니다.

metadata

subxt 코드 생성에 사용할 Substrate 노드에서 메타데이터를 다운로드합니다.

출력

하위 명령을 지정하는 방식에 따라 subxt의 출력에는 다음 정보 중 일부 또는 모두 포함됩니다:

이 필드내용

메타데이터

대상 체인의 메타데이터가 포함된 파일입니다.

API

대상 체인의 API가 포함된 파일입니다.

예제

subxt 프로그램의 버전 정보를 표시하려면 다음 명령을 실행합니다:

subxt --version

subxt metadata 명령의 사용법 정보를 표시하려면 다음 명령을 실행합니다:

subxt metadata --help

codegen

subxt codegen 명령을 사용하여 대상 Substrate 노드에 대한 인터페이스를 생성합니다.

이는 노드의 API를 디버깅하거나 특정 하드웨어 제약 조건을 충족시키기 위해 수정하는 데 유용할 수 있습니다.

기본 사용법

subxt codegen [OPTIONS]

플래그

subxt codegen 명령과 함께 다음 선택적 플래그를 사용할 수 있습니다.

플래그설명

-h, --help

사용법 정보 표시

-V, --version

버전 정보 출력

옵션

subxt codegen 명령과 함께 다음 명령 줄 옵션을 사용할 수 있습니다.

옵션설명

-f, --file <file>

인코딩된 메타데이터 파일의 경로를 지정합니다.

--url <url>

코드 생성을 위해 메타데이터를 쿼리할 Substrate 노드의 URL을 지정합니다.

예제

생성된 API를 형식화하여 터미널에 출력하려면 다음 명령을 실행합니다:

subxt codegen | rustfmt

생성된 API를 파일에 저장하려면 다음 명령을 실행합니다:

subxt codegen | rustfmt --edition=2018 > api.rs

metadata

subxt metadata 명령을 사용하여 대상 Substrate 노드의 메타데이터를 가져옵니다.

기본 사용법

subxt metadata [OPTIONS]

플래그

subxt metadata 명령과 함께 다음 선택적 플래그를 사용할 수 있습니다.

플래그설명

-h, --help

사용법 정보 표시

-V, --version

버전 정보 출력

옵션

subxt metadata 명령과 함께 다음 명령 줄 옵션을 사용할 수 있습니다.

옵션설명

-f, --format <format>

표시할 메타데이터의 형식을 지정합니다. 유효한 형식은 json, hex 또는 bytes입니다. 기본 형식은 json입니다.

--url <url>

메타데이터를 쿼리할 Substrate 노드의 URL을 지정합니다. 기본 URL은 http://localhost:9933입니다.

예제

로컬 노드에서 바이트로 인코딩된 메타데이터를 파일로 저장하려면 다음 명령을 실행합니다:

subxt metadata -f bytes > metadata.scale

Rococo 네트워크의 메타데이터를 JSON 파일로 저장하려면 다음 명령을 실행합니다:

subxt metadata --url https://rococo-rpc.polkadot.io:443 > <contract_name>.json

메타데이터의 타입 배열에서 타입 125를 쿼리하고 JSON으로 출력하려면 다음 명령을 실행합니다:

subxt metadata --format json | jq '.[1].V14.types.types | .[125]'

Last updated