跳到主要内容

SuiClient——您应用的“邮局职员”

  • 受众: 刚接触 Sui 区块链的开发者。
  • 先决条件: 具备区块链概念的基础知识(钱包、交易)。
  • 目标: 理解 SuiClient 在应用架构中的作用。

简介

在 Sui 生态系统中,您的应用无法直接与区块链网络通信。 它需要一个中间件来处理通信协议、数据获取和交易提交。

SuiClient 是 Sui TypeScript SDK 中用于此目的的主要接口。

架构:"邮局" 类比

将 Sui 网络想象成一个庞大的全球邮政系统。

  • 您的应用 是柜台前的客户。
  • SuiClient 则是 邮局职员

您需要依靠职员来与系统交互。您无法亲自分拣邮件或驾驶配送卡车;必须通过职员提交请求。

screenshot of SuiClient architecture

连接网络

正如柜员在特定分支机构工作一样,SuiClient 实例通过 RPC(远程过程调用)端点 连接到特定的网络环境。

初始化客户端时,需指定其目标环境:

网络描述适用场景
主网正式生产网络。真实资产,真实价值。生产级应用。
测试网公开测试网络。版本与 主网 同步。预发布及集成测试。
开发网实验性网络。数据会频繁清空。快速原型设计和本地开发。

核心功能

SuiClient 处理两类截然不同的操作。理解两者的区别对应用设计至关重要。

1. 读取操作(查询)

这些是用于查询账本上现有数据的请求。

  • 成本: 免费(无需 gas 费用)。
  • 安全性: 无需钱包签名。
  • 机制: 客户端查询节点的本地数据库并立即返回结果。
  • 示例:
    • getObject():获取 NFT 元数据。
    • getBalance():查询钱包余额。

2. 写入操作(交易)

这些是用于更改账本状态的请求。

  • 成本: 需消耗 SUI 代币作为 gas 费用。
  • 安全性: 需要用户钱包的加密签名。
  • 机制: 客户端将已签名的交易提交给网络验证者进行处理。
  • 示例:
    • 转账。
    • 铸造 NFT。
    • 修改链上游戏数据。

后续步骤

既然您已经了解了架构,下一步就是执行 读取操作。下一份指南将提供一个脚本,用于从 Sui 开发网查询实时数据。