在 Helius,我们开发了一个 Node.js 和一个 Rust SDK,以简化在 Solana 上的开发。以下页面包含有关安装和使用这些 SDK 的信息,还涵盖了常见错误处理、最新文档的查找方式以及如何为这些 SDK 做出贡献。
我们还列出了由我们优秀社区创建的非官方社区 SDK。请注意,这些 SDK 并非由我们团队正式维护——只有 Node.js 和 Rust SDK 是官方维护的。
Node.js SDK
请注意,Node.js SDK 从版本 2.0.0 开始已被重写。这是为了使用@solana/kit
并移除对版本高于 1.73.2 的@solana/web3.js
的依赖。对于迁移到最新版本的用户,请参考我们的迁移指南。
Helius Node.js SDK 可以通过以下任一包管理器安装:
快速开始
下面是一个如何使用 Node.js SDK 获取给定地址拥有的资产列表的简单示例:
import { createHelius } from "helius-sdk";
(async () => {
const apiKey = ""; // From Helius dashboard
const helius = createHelius({ apiKey });
try {
const assets = await helius.getAssetsByOwner({
ownerAddress: "owner_address_goes_here",
page: 1,
limit: 50,
sortBy: { sortBy: "created", sortDirection: "asc" },
});
console.log("Fetched assets:", assets);
} catch (error) {
console.error("Error:", error);
}
})();
示例目录中包含了详细的代码示例,涵盖每个方法和基本用法,按命名空间组织。有关 API 参考文档,请参阅我们的文档和Solana 官方文档以获取一般的 Solana JSON RPC API 帮助。有关 Kit 的一般帮助,请参阅Kit 的文档。
Rust SDK
将依赖项添加到 Cargo.toml
要在项目中开始使用 Helius Rust SDK,请通过cargo
将其添加为依赖项。打开项目的Cargo.toml
并在[dependencies]
下添加以下行:其中x.y.z
是您所需的版本。 替代方法:使用 cargo add 命令
或者,使用cargo add helius
直接通过命令行添加依赖项。这将自动找到与您的项目兼容的最新版本并将其添加到您的Cargo.toml
。
保持 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(())
}
错误处理
当API返回非成功(即4xx或5xx状态码)时,将抛出错误消息。
例如,下面是使用Node.js SDK进行不正确的getAsset调用时抛出的401错误:
{
"jsonrpc": "2.0",
"error": {
"code": -32001,
"message": "Authentication failed. Missing or invalid API key."
},
"id": "1"
}
常见错误代码
在使用Helius SDK时,您可能会遇到几个错误代码。下面是一些常见错误代码的表格,以及帮助您排除故障的附加信息:
当请求参数无效时发生。
当提供了无效的API密钥或由于RPC规则限制访问时发生。
表示用户在给定时间范围内超过了请求限制或超出了信用额度。
这是服务器端问题的通用错误消息。请联系Helius支持以获得帮助。
如果您遇到这些错误:
联系支持
联系Helius支持团队以获得更详细的帮助
对我们的 SDK 贡献
我们欢迎所有对我们 SDK 的贡献!如果您有兴趣,这里是我们的 GitHub 仓库:
特别想为 Helius Rust SDK 做贡献吗?在提交 pull request 之前,请阅读以下贡献指南!
非官方社区 SDK
我们出色的社区成员还创建了他们自己的 SDK 来与我们的 REST API 进行交互。请注意,我们的团队不正式维护这些 SDK。