Skip to content

SDK 概述

Sui TypeScript SDK 是一个模块化的工具库,用于与 Sui 区块链交互。用它向 RPC 节点发送查询,构建和签署事务,并与 Sui 或本地网络交互。

@mysten/sui 是 Sui 官方提供的 TypeScript/JavaScript SDK,提供了完整的功能来:

Sui 网络

如下列举 Sui 网络节点:

网络节点水龙头
localhttp://127.0.0.1:9000 默认http://127.0.0.1:9123/v2/gas
Devnethttps://fullnode.devnet.sui.io:443https://faucet.devnet.sui.io/v2/gas
Testnethttps://fullnode.testnet.sui.io:443https://faucet.devnet.sui.io/v2/gas
Mainnethttps://fullnode.mainnet.sui.io:443null

web 通用水龙头网址:https://faucet.sui.io/

生产环境防范

生产应用使用专用节点/共享服务,而不是公共端点。Mysten Labs 维护的公共端点(fullnode.<NETWORK>.sui.io:443)受速率限制,每 30 秒左右只支持 100 个请求。不要在流量大的生产应用中使用公共端点。

Sui 模块化包

SDK 包含一组模块化包,你可以独立使用,也可以一起使用。导入你所需的内容,保持代码轻量紧凑。

  • @mysten/sui/client - 用于与 Sui RPC 节点交互的客户端。
  • @mysten/sui/bcs - 一个带有预定义类型类型的 Sui BCS 构建器。
  • @mysten/sui/transactions — 用于构建和交互事务的公用事业。
  • @mysten/sui/keypairs/* - 针对特定 KeyPair 实现的模块化导出。
  • @mysten/sui/verify - 验证交易和消息的方法。
  • @mysten/sui/cryptography — 密码学的共享类型和类。
  • @mysten/sui/multisig - 处理多重签名的实用工具。
  • @mysten/sui/utils - 用于格式化和解析各种 Sui 类型的工具。
  • @mysten/sui/faucet - 从水龙头请求 SUI 的方法。
  • @mysten/sui/zklogin - 用于使用 zkLogin 的工具。

安装和配置

环境要求

  • Node.js >=16.x
  • npm >=9.x
  • Yarn >=1.22.x

安装 SDK

bash
# 使用 npm
npm install @mysten/sui

# 使用 yarn
yarn add @mysten/sui

# 使用 pnpm
pnpm add @mysten/sui

TypeScript 配置

创建或更新 tsconfig.json

json
{
  "compilerOptions": {
    "target": "ES2020",
    "module": "commonjs",
    "lib": ["ES2020"],
    "moduleResolution": "node",
    "esModuleInterop": true,
    "strict": true,
    "skipLibCheck": true,
    "resolveJsonModule": true,
    "outDir": "./dist"
  },
  "include": ["src/**/*"],
  "exclude": ["node_modules"]
}

基于 MIT 许可发布