使用 Anchor 进行代币集成
学习如何从 Anchor 程序中与 Solana 的 Token Program 进行交互。
什么是 Token Program?
在 Solana 上,有两个主要的 Token Program(由 Anza 开发,之前是 Solana Labs):
- Token Program (原始版)
- 提供基本的代币功能(铸币、转账等)
- 不可变且广泛使用
- Token Extension Program (Token 2022)
- 包含所有原始 Token Program 的功能
- 通过“扩展”添加了额外的功能
- 推荐用于新代币
在 Anchor 程序中调用 Token Program
anchor-spl
crate 简化了在 Anchor 程序中与 Solana 的 Token Program 交互的过程。此 crate 包含了原始 Token Program 和新版 Token Extension Program (Token 2022) 的指令和账户类型。
只需将 anchor-spl
crate 添加为您的程序的依赖项,并在 Cargo.toml
中将 "anchor-spl/idl-build"
添加到 idl-build 特性列表中。有关如何在本地创建 Anchor 程序的步骤,请参阅 快速入门页面。
核心模块
anchor-spl
crate 提供的最常用的模块包括:
模块 | 描述 |
---|---|
token | Token Program(旧版)的指令和账户类型 |
token_2022 | Token 2022 基础指令(与 Token Program 功能匹配的指令) |
token_2022_extensions | Token 2022 扩展指令 |
token_interface | 适用于 Token Program 和 Token 2022 Program 的账户类型实现 |
associated_token | 关联代币账户指令 |
以下页面提供了如何在 Anchor 程序中使用 anchor-spl
crate 的示例。