高性能生成通用唯一词典排序标识符
生成 ULID
为现代应用程序提供快速、高效和可排序的标识符
所有数据都保留在您的浏览器中。不会发送到服务器。
Options
将 userId / tenantId 嵌入到 ULID 的 80 位随机数中
本地历史记录 (离线保存)
隐私安全:100% 客户端处理,零服务器记录。
暂无生成的 ID
您生成的 ID 将自动显示在这里。
ULID 与 UUID 比较
为什么在许多情况下 ULID 比 UUID 更好?
ULID
推荐时间可排序
前 10 个字节是自然排序的 Unix 时间
Crockford 的 Base32
更高效的编码,不区分大小写,没有特殊字符
单调递增选项
可以为相同时间戳生成单调递增的值
人类可读
在日志和数据库中更容易调试和阅读
ULID 示例:
UUID
不可按时间排序
随机字节不提供任何排序保证
十六进制编码
效率较低,相同信息需要更多字符
无单调性
没有内置机制用于单调递增值
可读性较差
在日志和数据库中更难区分和识别
UUID 示例:
性能比较
代码示例
以下是一些代码示例,帮助您开始
// Node.js / 浏览器
// 安装: npm install @ulid/javascript
import { ulid } from '@ulid/javascript';
// 生成新的 ULID
const myUlid = ulid(); // "01F8MECHZX3TBDSZ7XR8H8J1R4"
// 使用自定义时间戳创建 ULID (毫秒)
const customTimestamp = 1616239022000;
const ulidWithCustomTime = ulid(customTimestamp);
// 创建单调递增的 ULID (用于同一毫秒内的多个 ID)
import { monotonicFactory } from '@ulid/javascript';
const monotonic = monotonicFactory();
const ulid1 = monotonic(); // "01F8MECHZX3TBDSZ7XR8H8J1R4"
const ulid2 = monotonic(); // "01F8MECHZX3TBDSZ7XR8H8J1R5" (递增)
// 从 ULID 提取时间戳
const timestamp = ulid.decode(myUlid).time;
console.log(new Date(timestamp).toISOString()); JavaScript: npm install @ulid/javascript
时间戳转换器
转换结果
JWT 解码与调试器
-解析 JSON Web 令牌,检查 Claims 并扫描潜在的安全漏洞
终端命令自动提取
您可以直接复制包含 JWT 的终端命令、Shell 脚本或 cURL 请求并粘贴到输入框中。工具将自动检测并提取出原始令牌。
curl -H "Authorization: Bearer eyJhbG..." "Authorization" = "Bearer eyJhbG..." set JWT=eyJhbG... // 粘贴令牌进行解析... // 粘贴令牌进行解析...