在 Helius,我们开发了一个 Node.js 和一个 Rust SDK,以简化在 Solana 上的开发。以下页面包含有关安装和使用这些 SDK 的信息,还涵盖了常见错误处理、最新文档的查找方式以及如何为这些 SDK 做出贡献。 我们还列出了由我们优秀社区创建的非官方社区 SDK。请注意,这些 SDK 并非由我们团队正式维护——只有 Node.js 和 Rust SDK 是官方维护的。

Node.js SDK

安装

Helius Node.js SDK 可以通过以下任意包管理器安装:
npm install helius-sdk

快速开始

以下是一个简单的示例,展示如何使用 Node.js SDK 获取某个地址拥有的资产列表:
import { Helius } from "helius-sdk";

const helius = new Helius("YOUR_API_KEY");
const response = await helius.rpc.getAssetsByOwner({
  ownerAddress: "86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",
  page: 1,
});

console.log(response.items);

文档

README 文件 包含了涵盖每个方法和基本用法的详细代码示例。有关 API 参考文档,请参阅我们的文档以及通用 Solana JSON RPC API 的官方 Solana 文档

Rust SDK

安装

1

将依赖项添加到 Cargo.toml

要在项目中开始使用 Helius Rust SDK,请通过 cargo 将其添加为依赖项。打开项目的 Cargo.toml,并在 [dependencies] 下添加以下行:
helius = "x.y.z"
其中 x.y.z 是您期望的版本。
2

替代方法:使用 cargo add 命令

或者,使用 cargo add helius 通过命令行直接添加依赖项。这将自动找到与您的项目兼容的最新版本,并将其添加到您的 Cargo.toml 中。
3

保持您的 SDK 更新

请记得定期运行 cargo update 以获取 SDK 的最新版本。

快速开始

以下是使用 增强交易 API 解析给定交易 的一个简单示例:
use helius::error::Result;
use helius::types::*;
use helius::Helius;

#[tokio::main]
async fn main() -> Result<()> {
    let api_key: &str = "your_api_key";
    let cluster: Cluster = Cluster::MainnetBeta;

    let helius: Helius = Helius::new(api_key, cluster).unwrap();

    let request: ParseTransactionsRequest = ParseTransactionsRequest {
        transactions: vec![
            "2sShYqqcWAcJiGc3oK74iFsYKgLCNiY2DsivMbaJGQT8pRzR8z5iBcdmTMXRobH8cZNZgeV9Ur9VjvLsykfFE2Li".to_string(),
        ],
    };

    let response: Result<Vec<EnhancedTransaction>, HeliusError> = helius.parse_transactions(request).await;
    println!("Assets: {:?}", response);

    Ok(())
}

文档

错误处理

例如:
// From our Node.js SDK
try {
  const response = await helius.rpc.getAssetsByOwner({
    ownerAddress: "86xCnPeV69n6t3DnyGvkKobf9FdN2H9oiVDdaMpo2MMY",
    page: 1,
  });
  console.log(response.items);
} catch (error) {
  console.log(error);
}

常见错误代码

在使用 Helius SDK 时,您可能会遇到一些错误代码。以下是一些常见错误代码的表格,以及帮助您排查问题的附加信息:
如果您遇到这些错误:
1

检查错误文档

如果使用 Rust SDK,请参考 errors.rs 获取所有可能由 Helius 客户端返回的错误列表
2

查看文档

请参考 Helius 文档 以获取更多指导
3

联系支持团队

联系 Helius 支持团队以获得更详细的帮助

对我们 SDK 的贡献

我们欢迎所有对我们 SDK 的贡献!如果您感兴趣,这里是我们的 GitHub 仓库:

非官方社区 SDK