#uuid #url-safe #mini #base64 #short

mini_uuid

为 Rust 提供的小型且 URL 安全的 UUIDcrate

3 个不稳定版本

0.2.0 2024 年 6 月 5 日
0.1.1 2024 年 6 月 5 日
0.1.0 2024 年 6 月 5 日

#438数据结构

每月 34 次下载

自定义许可

13KB
151

🐁 mini_uuid

mini_uuid 是一个 Rust crate,它将 UUID 转换为紧凑的 base64 表示形式,使它们更短、更高效地用于存储和传输!

附言,我在无聊的时候用空闲时间做了这个,不知道我会迭代多少次,除非你了解你正在使用的代码,否则请不要在生产环境中使用

功能

您可以使用此 crate 与 v1v4v7 uuids。填充是可选的,使用 padding 功能,您可以通过 url_safe 功能启用 URL 安全性。

使用方法


use mini_uuid::MiniUuid;

fn main() {
  // Generate a UUID
  let uuid = uuid::Uuid::new_v4();

  // Convert to mini UUID (base64)
  let mini = MiniUuid::from_uuid(&uuid);
  // or just create it without the `uuid` crate
  let mini = MiniUuid::new();
  println!("Mini UUID: {}", mini.to_string());

  // Convert back to UUID
  let original_uuid = mini.to_uuid().unwrap();
  println!("Original UUID: {}", original_uuid);

}

方法

// Creates a `MiniUuid` from a `uuid::Uuid`
let mini = MiniUuid::from_uuid(uuid::Uuid::new_v4());

// Creates a `MiniUuid` from a string representing `uuid::Uuid`
let mini = MiniUuid::from_uuid_str("67e55044-10b1-426f-9247-bb680e5fe0c8");

// Creates a `MiniUuid` from a string by checking the `padding` and `url_safe` features
let mini = MiniUuid::from_string("/*INSERT MINI UUID*/");

// Creates a `MiniUuid` from a url safe base64 string with padding
let mini = MiniUuid::from_url_base64("Z+VQRBCxQm+SR7toDl/gyA==");

// Creates a `MiniUuid` from a url safe base64 string without padding
let mini = MiniUuid::from_url_base64_no_pad("Z+VQRBCxQm+SR7toDl/gyA");

// Creates a `MiniUuid` from a base64 string with padding
let mini = MiniUuid::from_base64("Z-VQRBCxQm-SR7toDl_gyA==");

// Creates a `MiniUuid` from a base64 string without padding
let mini = MiniUuid::from_base64_no_pad("Z-VQRBCxQm-SR7toDl_gyA");

// Converts `MiniUuid` to `uuid::Uuid`
let uuid = mini.to_uuid();

// Converts `MiniUuid` to a string by checking the `padding` and `url_safe` features
let uuid = mini.to_string();

// Converts `MiniUuid` to url safe base64 string with padding
let uuid = mini.to_url_base64();

// Converts `MiniUuid` to url safe base64 string without padding
let uuid = mini.to_url_base64_no_pad();

// Converts `MiniUuid` to base64 string with padding
let uuid = mini.to_base64();

// Converts `MiniUuid` to base64 string without padding
let uuid = mini.to_base64_no_pad();

安装

mini_uuid 添加到您的 Cargo.toml

[dependencies]
mini_uuid = "0.2.0"

贡献

欢迎贡献!请打开一个 issue 或在 GitHub 上提交一个 pull request。

许可

本项目采用 MIT 许可证。有关详细信息,请参阅 LICENSE 文件。

致谢

uuid crateshort_uuid crate 的启发

nanokeshtw 使用 ❤️ 制作

依赖

~515KB