SuperAPI AI 工具集

ts-sdk-address

通用与其它

查看项目

更新于 10-15 19:57

技能介绍

用途:指导在 @aptos-labs/ts-sdk 中正确创建、解析和格式化账户地址。地址为 32 字节值,字符串格式遵循 AIP-40。

主要能力与用法:推荐用 AccountAddress.from() 接收灵活输入,支持带或不带 0x 的字符串、Uint8Array 或已有 AccountAddress;多数 API 接受 AccountAddressInput(字符串或 AccountAddress)。需要 AIP-40 严格模式时用 AccountAddress.fromStringStrict() 或 AccountAddress.fromStrict():LONG 为 0x 加 64 位十六进制字符,SHORT 仅限特殊地址(0x0–0xf)。可用 new AccountAddress(bytes) 或 from(bytes) 从字节构造。内置常量包括 ZERO、ONE、TWO、THREE、FOUR、A。

输出与校验:toString() 默认 SHORT 用于特殊地址、其余 LONG;toStringLong() 固定为 0x 加 64 位;toStringShort() 为最短形式;toStringLongWithoutPrefix() 为 64 位无 0x。isValid({input, strict}) 返回 valid 与 invalidReason、invalidReasonMessage。

派生地址:使用 createObjectAddress、createResourceAddress、createTokenAddress、createUserDerivedObjectAddress 生成对象、资源、代币及用户派生地址,不要手工哈希。

比较与序列化:用 addr.equals(other) 比较,不要用字符串 ===;BCS 使用序列化器或 SDK 交易构建辅助方法。

限制与注意:账户地址不要用 Hex 类;非特殊地址在严格模式下必须用 LONG;SHORT 不可用于非特殊地址。参考 SDK 文件 src/core/accountAddress.ts、src/core/account/utils/address.ts,以及 AIP-40 文档。具体价格与平台支持暂未提供。