4个版本 (2个稳定版)
1.1.0 | 2022年3月22日 |
---|---|
1.0.0 | 2020年4月27日 |
0.1.1 | 2020年4月5日 |
0.1.0 | 2020年4月5日 |
#247 in HTTP客户端
每月814次下载
在suiweb中使用
44KB
774 行
pinata-sdk
pinata_sdk
提供了与Pinata API交互的最简单途径。
设置
将crate作为依赖项添加到您的代码库中
[dependencies]
pinata_sdk = "1.0.0"
初始化API
use pinata_sdk::PinataApi;
let api = PinataApi::new("api_key", "secret_api_key").unwrap();
// test that you can connect to the API:
let result = api.test_authentication().await;
if let Ok(_) = result {
// credentials are correct and other api calls can be made
}
用法
1. 锚定文件
将文件发送到pinata以直接锚定到IPFS。
use pinata_sdk::{ApiError, PinataApi, PinByFile};
let api = PinataApi::new("api_key", "secret_api_key").unwrap();
let result = api.pin_file(PinByFile::new("file_or_dir_path")).await;
if let Ok(pinned_object) = result {
let hash = pinned_object.ipfs_hash;
}
如果使用目录路径构建PinByFile
,则pin_file()
将上传要锚定的文件的所有内容到pinata。
2. 锚定JSON对象
您可以发送一个可序列化的JSON对象到pinata以直接锚定到IPFS。
use pinata_sdk::{ApiError, PinataApi, PinByJson};
use std::collections::HashMap;
let api = PinataApi::new("api_key", "secret_api_key").unwrap();
// HashMap derives serde::Serialize
let mut json_data = HashMap::new();
json_data.insert("name", "user");
let result = api.pin_json(PinByJson::new(json_data)).await;
if let Ok(pinned_object) = result {
let hash = pinned_object.ipfs_hash;
}
取消锚定
您可以通过传递已锚定内容的CID哈希来使用PinataApi::unpin()
函数取消锚定。
贡献指南
请随时贡献。请确保存在一个描述您计划贡献的功能或错误修复的问题。
许可证
MIT OR Apache-2.0
依赖关系
~8–20MB
~311K SLoC