13个版本 (7个重大更新)
0.37.0 | 2024年5月28日 |
---|---|
0.35.3 | 2024年4月11日 |
0.35.0 | 2024年3月21日 |
0.33.0 | 2023年12月7日 |
0.30.1 | 2023年7月25日 |
#58 in #parity
27,417 monthly downloads
在 16 个crate中(通过 subxt)使用
64KB
1K SLoC
subxt ·
Subxt 是一个用于与基于 Substrate 的节点进行交互的 Rust 和 WebAssembly 库。它可以
- 提交外部交易(名字由此而来)。
- 订阅区块,从其中读取外部交易和相关事件。
- 读取并迭代存储值。
- 从元数据中读取常量和自定义值。
- 调用运行时API,返回结果。
- 以上所有操作都可以通过一个安全、静态类型接口或动态接口完成,具体取决于您是否需要灵活性。
- 编译为WASM并在浏览器中完全运行。
- 通过
subxt-core
crate 在#[no_std]
环境中执行大量操作。 - 使用内置的轻客户端(
smoldot
)与链交互。
用法
请查看 examples 文件夹或 examples 文件夹,以了解各种较小的或较大的 subxt
使用示例,或 阅读指南 以了解更多信息。
从 Substrate 节点下载元数据
使用 subxt-cli
工具从节点下载目标运行时的元数据。
- 安装
cargo install subxt-cli
- 将编码后的元数据保存到文件
subxt metadata -f bytes > metadata.scale
默认情况下,会查询默认地址 https://127.0.0.1:9933/
上本地运行的节点的元数据。如果查询不同的节点,则 metadata
命令接受一个 --url
参数。
Subxt 文档
有关使用 subxt 的更多详细信息,请访问 文档。
集成测试
大多数测试需要运行一个 substrate 节点来进行通信。这通过为每个测试实例启动一个 substrate 节点来完成。需要在您的路径中有一个最新的 substrate
可执行文件。
这可以通过 cargo 从源代码安装
cargo install --git https://github.com/paritytech/polkadot-sdk staging-node-cli --force
实际应用
请通过 PR 将您的项目添加到此列表中。
- cargo-contract CLI,用于与 Wasm 智能合约交互。
- xcm-cli CLI,用于提交 XCM 消息。
- phala-pherry Phala 区块链与链下安全工作者之间的中继。
- crunch CLI,用于为基于 substrate 的链批量声明每个纪元或 X 小时的质押奖励。
- interbtc-clients interBTC 分片客户端实现;特别是保险库/中继和预言机。
- tidext Tidechain 客户端,具有 Stronghold 签署者。
- staking-miner-v2 提交 NPos 选举解决方案并获得奖励。
- polkadot-introspector 用于监控 Polkadot 节点的工具。
- ink! 智能合约语言,它使用
subxt
允许开发人员执行其合约的 端到端测试。 - Chainflip 用于本地跨链兑换的去中心化交易所。
替代方案
substrate-api-client 提供类似的功能。
许可证
本存储库中的全部代码均采用 GPL-3.0 或 Apache-2.0 许可证的双重许可。有关更多详细信息,请参阅 LICENSE 文件。
如果您对我们的产品许可证有任何疑问,请 联系我们。
依赖关系
~22–37MB
~600K SLoC