subxt
Last updated
Last updated
subxt
라이브러리를 사용하면 원격 프로시저 호출을 통해 Substrate 노드에 트랜잭션을 제출할 수 있습니다. subxt
라이브러리를 사용하기 전에 독립적인 subxt
명령 줄 인터페이스를 사용하여 트랜잭션을 제출할 대상으로 사용할 Substrate 노드의 메타데이터를 다운로드할 수 있습니다. subxt-cli
도구를 사용하면 subxt
라이브러리를 사용하는 데 중요한 두 가지 핵심 작업을 수행할 수 있습니다:
subxt-cli
도구를 사용하여 대상 Substrate 노드에서 메타데이터를 다운로드할 수 있습니다.
subxt-cli
도구를 사용하여 대상 Substrate 노드의 메타데이터에서 런타임 API 코드를 생성할 수 있습니다.
subxt
라이브러리와 subxt-cli
도구는 메타데이터 v14 이상을 사용하는 모든 노드에 사용할 수 있습니다. subxt
라이브러리의 사용 예는 examples 폴더를 참조하십시오.
subxt-cli
를 설치하려면:
필요한 경우 터미널 셸을 엽니다.
필요한 경우 Rust 컴파일러와 툴체인이 설치되어 있는지 확인합니다.
다음 명령을 사용하여 필요한 패키지를 다운로드합니다: cargo install subxt-cli
subxt
명령을 실행하는 기본 구문은 다음과 같습니다:
subxt <SUBCOMMAND>
subxt
가 노드를 로컬에서 실행 중이거나 대상 체인을 지정해야만 subxt
가 노출하는 명령을 사용할 수 있습니다. 메타데이터가 이미 제공된 경우 노드를 실행하지 않고 codegen
하위 명령을 사용할 수 있습니다.
subxt
명령과 함께 다음 선택적 플래그를 사용할 수 있습니다.
플래그 | 설명 |
---|---|
subxt
명령 줄 인터페이스와 함께 다음 하위 명령을 사용할 수 있습니다.
하위 명령을 지정하는 방식에 따라 subxt
의 출력에는 다음 정보 중 일부 또는 모두 포함됩니다:
subxt
프로그램의 버전 정보를 표시하려면 다음 명령을 실행합니다:
subxt --version
subxt metadata
명령의 사용법 정보를 표시하려면 다음 명령을 실행합니다:
subxt metadata --help
subxt codegen
명령을 사용하여 대상 Substrate 노드에 대한 인터페이스를 생성합니다.
이는 노드의 API를 디버깅하거나 특정 하드웨어 제약 조건을 충족시키기 위해 수정하는 데 유용할 수 있습니다.
기본 사용법
subxt codegen [OPTIONS]
플래그
subxt codegen
명령과 함께 다음 선택적 플래그를 사용할 수 있습니다.
옵션
subxt codegen
명령과 함께 다음 명령 줄 옵션을 사용할 수 있습니다.
예제
생성된 API를 형식화하여 터미널에 출력하려면 다음 명령을 실행합니다:
subxt codegen | rustfmt
생성된 API를 파일에 저장하려면 다음 명령을 실행합니다:
subxt codegen | rustfmt --edition=2018 > api.rs
subxt metadata
명령을 사용하여 대상 Substrate 노드의 메타데이터를 가져옵니다.
기본 사용법
subxt metadata [OPTIONS]
플래그
subxt metadata
명령과 함께 다음 선택적 플래그를 사용할 수 있습니다.
옵션
subxt metadata
명령과 함께 다음 명령 줄 옵션을 사용할 수 있습니다.
예제
로컬 노드에서 바이트로 인코딩된 메타데이터를 파일로 저장하려면 다음 명령을 실행합니다:
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]'
명령어 | 설명 |
---|---|
이 필드 | 내용 |
---|---|
플래그 | 설명 |
---|---|
옵션 | 설명 |
---|---|
플래그 | 설명 |
---|---|
옵션 | 설명 |
---|---|
-h, --help
사용법 정보 표시
-V, --version
버전 정보 표시
codegen
메타데이터에서 런타임 API 클라이언트 코드를 생성합니다.
metadata
subxt
코드 생성에 사용할 Substrate 노드에서 메타데이터를 다운로드합니다.
메타데이터
대상 체인의 메타데이터가 포함된 파일입니다.
API
대상 체인의 API가 포함된 파일입니다.
-h, --help
사용법 정보 표시
-V, --version
버전 정보 출력
-f, --file <file>
인코딩된 메타데이터 파일의 경로를 지정합니다.
--url <url>
코드 생성을 위해 메타데이터를 쿼리할 Substrate 노드의 URL을 지정합니다.
-h, --help
사용법 정보 표시
-V, --version
버전 정보 출력
-f, --format <format>
표시할 메타데이터의 형식을 지정합니다. 유효한 형식은 json
, hex
또는 bytes
입니다. 기본 형식은 json
입니다.
--url <url>
메타데이터를 쿼리할 Substrate 노드의 URL을 지정합니다. 기본 URL은 http://localhost:9933
입니다.