Skip to main content

前提条件

您需要:
  • 一个 Apex API 密钥,可在 OrbitFlare 控制台的 Dashboard > Apex 下获取。
  • 一个有余额的 Solana 密钥对文件(由 solana-keygen 写入的 JSON 数组格式),其中至少有 0.002 SOL 用于支付 0.001 SOL 的小费以及网络费用。
  • 任意 Solana RPC URL,用于获取 blockhash 和确认交易,例如您的 OrbitFlare RPC 端点。
每个示例都读取相同的环境变量:
这些示例会在主网上发送一笔真实交易。如果交易上链,将支付 0.001 SOL 小费以及网络费用。如果未上链,则不产生任何费用。

发送您的第一笔交易

1

检查 Apex 端点是否可达

GET /ping 无需密钥,返回 pong:
2

获取小费账户

您的交易必须向这些账户之一转账,金额不低于您所在等级的下限(标准等级为 0.001 SOL)。参见小费。
3

构建、签名、发送并确认

每个标签页都是一个完整的程序。它构建一笔带有计算预算和小费的 memo 交易,通过 JSON-RPC sendTransaction 发送,并等待确认。cURL 无法对交易签名,因此 cURL 标签页使用一个小型 Node.js 脚本来构建并签名交易,然后以 base64 形式输出。之后的所有步骤都是纯 cURL。
成功的 sendTransaction 会返回交易的签名:
已接受并不代表已上链。 一旦 Apex 端点持有交易并开始竞速发送,签名就会立即返回。请务必像每个示例那样,在 Solana RPC 上使用 getSignatureStatuses 进行确认。

Rust 依赖

Rust 标签页使用 QUIC 客户端,这是最快的路径。从 crates.io 添加该 crate:
这就是全部的依赖列表。客户端通过 orbitflare_apex::prelude 重新导出了示例所需的每一个 Solana 类型,并固定在端点所使用的版本上,因此您无需自行添加或版本匹配任何 solana-* crate。如果您改用自己的 Solana crate 构建交易,请通过 send_transaction_bytes 把序列化后的字节交给客户端。 完整 API 参见 Rust 客户端。

Go 依赖

Go 标签页使用 orbitflare-apex-go 中的 QUIC 客户端,并使用 solana-go 构建交易:
该模块需要 Go 1.26 或更高版本。完整 API 参见 Go 客户端。

已经在调用 sendTransaction?

Apex 使用标准的 Solana sendTransaction 格式,因此迁移现有代码只需替换 URL,再加上两处改动:
  1. 将您的发送调用指向 http://<code>.apex.orbitflare.com,并添加 x-api-key 请求头(或 ?api-key=)。
  2. 为每笔交易添加小费指令。
其他所有操作请继续使用您常规的 Solana RPC:获取 blockhash、读取账户、模拟和确认。Apex 端点只接受发送类请求。

下一步

发送交易

二进制 HTTP、批量和 QUIC 流。

小费

完整的小费规则以及小费的用途。

错误与速率限制

每一种拒绝代码及其处理方法。

最佳实践

连接预热、小费设置、确认和重试。