SDK 概览
OXN 支持多个客户端 SDK,各自面向不同运行时环境。本页帮你选择。
决策树
| 你的应用运行在 | 推荐 SDK | 参见 |
|---|---|---|
| 浏览器(dApp 前端) | ethers.js + OXN wrapper | TypeScript / JavaScript |
| Node.js 后端 | ethers.js + OXN wrapper(或 viem) | TypeScript / JavaScript |
| Go 服务 / 索引器 | Go SDK | Go SDK |
| Rust 服务 | Rust SDK | Rust SDK |
| Shell 脚本 / CI | CLI 工具 | CLI 工具 |
| 移动端应用 | 用 REST API + 原生密码学 | 未直接覆盖 |
犹豫就用 TypeScript / ethers.js。 这条路径支持最完善、覆盖绝大多数用例。
特性对齐
| 特性 | TS | Go | Rust | CLI |
|---|---|---|---|---|
| 发送加密交易 | ✅ | ✅ | ✅ | 部分 |
| 加密 view 调用 | ✅ | ✅ | ✅ | 部分 |
| 签名查询 | ✅ | ✅ | ✅ | ❌ |
| 部署合约 | ✅ | ✅ | ✅ | ✅ |
查原生 oxn1… 余额 | ✅ | ✅ | ✅ | ✅ |
| 共识层 deposit/withdraw | ✅ | ✅ | ✅ | ✅ |
| 类型安全合约绑定 | ✅ | 部分 | ✅ | ❌ |
TypeScript SDK 功能最完整,因为大部分 dApp 开发在 JavaScript 里发生。Go 和 Rust 紧随其后,是高性能后端的正确选择。
安装速查
TypeScript / JavaScript:
npm install ethers@^6.16.0 @oasisprotocol/sapphire-ethers-v6@^6.0.1
Hardhat 集成:
npm install --save-dev @oasisprotocol/sapphire-hardhat@^2.22.0
Go:
go get github.com/oasisprotocol/oasis-sdk/client-sdk/go@latest
Rust:
[dependencies]
oasis-runtime-sdk = "0.13"
CLI:
从 Oasis CLI releases 下载或源码构建。
版本
- 所有 OXN SDK 包用语义化版本号。
- 破坏性变更提升 major 版本。
- SDK 协议格式稳定——v6.x 客户端能与 v7.x 运行时对话,反之亦然。
支持生命周期
- 最新 major 版本:积极支持。
- 上一个 major 版本:下一 major 发布后 6 个月内仅安全修复。
- 更早的版本:不支持。
下一步
- TypeScript / JavaScript——用得最多的 SDK
- 钱包集成——MetaMask、WalletConnect、EIP-6963