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客户端

Download history 191/week @ 2024-04-07 209/week @ 2024-04-14 196/week @ 2024-04-21 296/week @ 2024-04-28 158/week @ 2024-05-05 99/week @ 2024-05-12 160/week @ 2024-05-19 246/week @ 2024-05-26 138/week @ 2024-06-02 253/week @ 2024-06-09 235/week @ 2024-06-16 334/week @ 2024-06-23 200/week @ 2024-06-30 209/week @ 2024-07-07 208/week @ 2024-07-14 178/week @ 2024-07-21

每月814次下载
suiweb中使用

MIT/Apache

44KB
774

pinata-sdk

Rust 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