5个不稳定版本
0.3.0 | 2020年9月6日 |
---|---|
0.2.0 | 2020年9月6日 |
0.1.2 | 2020年9月5日 |
0.1.1 | 2020年9月5日 |
0.1.0 | 2020年9月5日 |
#7 in #base62
用于 friendlyid
9KB
127 行(不含注释)
友好ID Rust库
友好ID库是什么?
友好ID库可以将给定的UUID(36个字符)转换为基于Base62的URL友好ID(友好ID),例如以下示例
UUID Friendly ID
c3587ec5-0976-497f-8374-61e0c2ea3da5 -> 5wbwf6yUxVBcr48AMbz9cb
| |
36 characters 22 characters or less
此外,该库还允许
- 将友好ID转换回原始UUID;
- 创建一个新的随机友好ID
为什么使用友好ID?
通用唯一标识符(UUID)提供了一种非顺序且唯一的标识符,可以单独生成,与源数据库无关。因此,无法猜测前一个或下一个标识符。这很好,但为了达到这种安全级别,UUID很长(128位长)且外观丑陋(36个字母数字字符,包括四个用于方便阅读而添加的连字符),如下例所示: 123e4567-e89b-12d3-a456-426655440000
。
这种格式是
- 难以阅读(尤其是它是URL的一部分时)
- 难以记忆
- 只能通过两次鼠标点击来复制(您必须手动选择开始和结束位置)
- 在复制、粘贴、编辑或发送时很容易跨行损坏。
我们的友好ID Java库通过使用Base62将给定的UUID转换为由最多22个字符组成的友好ID(但实际上通常包含更少的字符)来解决这些问题。
支持的语言
工具
有可用的CLI转换器
依赖
~345–510KB