Snowflake ID 解码器 (Discord, Twitter)
开发
Snowflake 是一种 64 位 ID,把毫秒时间戳、机器标识符与每毫秒的序列计数器打包进一个可排序的数字。Discord、Twitter/X、Instagram 以及许多分布式系统都在使用。本解码器将 ID 拆回各部分:移出高位以还原原始时间戳,加上平台的自定义纪元得到真实 UTC 日期时间,并把低位拆分为该平台所用的 worker、进程、数据中心、分片或序列字段。可选择 Discord(纪元 2015-01-01,5 位 worker + 5 位进程 + 12 位自增)、Twitter/X(纪元 2010-11-04,5+5+12)、Instagram(13 位分片 + 10 位序列),或使用自定义纪元。时间戳以 ISO UTC、你的本地时间、相对「x 前」以及原始纪元毫秒显示。全部在本地运行;不上传任何内容。
—
时间戳
UTC2016-04-30T11:18:25.796Z
本地4/30/2016, 11:18:25 AM
相对10y 2mo前
纪元 ms1462015105796
原始时间戳41944705796
字段
Worker (5b)1
进程 (5b)0
自增 (12b)7
Discord 纪元 2015-01-01 · Twitter/X 2010-11-04 · Instagram 2011-08-24。请用签发该 ID 的平台解码。
使用方法
- 选择平台(Discord、Twitter/X、Instagram 或自定义)。
- 粘贴 Snowflake ID — 例如 Discord 的用户或消息 ID。
- 查看创建时间戳与 worker / 序列字段;按需复制 UTC 时间或纪元。
常见问题
- 在哪里找到 Snowflake ID?
- 在 Discord 中启用开发者模式,右键用户、消息、频道或服务器即可复制其 ID。在 Twitter/X 中是推文 URL 末尾的长数字。Instagram 媒体 ID 由其 API 返回。这些长数字 ID 都可在此解码。
- 为何各平台需要不同纪元?
- Snowflake 的时间戳计的是自所选『纪元』而非 Unix 纪元以来的毫秒数,从而能用更少的位。Discord 用 2015-01-01,Twitter/X 用 2010-11-04,Instagram 用 2011-08-24。用错平台解码,日期会差好几年 — 请选择签发该 ID 的来源。
- worker 与序列字段是什么?
- 为了无需协调地生成 ID,每台机器都嵌入自身标识符(Discord 为 worker/进程,Twitter 为数据中心+worker,Instagram 为分片),外加一个对同一毫秒内创建的多个 ID 递增的序列计数器。借此可知是哪个节点生成了 ID,以及它大致有多繁忙。
- 时间戳精确吗?
- 精确 — 毫秒时间戳直接编码在 ID 中,因此创建时间精确到毫秒(前提是生成服务器的时钟正确)。相对时间是相对于你设备的当前时钟计算的。
相关工具
Base64 与十六进制互转
在浏览器中将 Base64 字符串转换为十六进制字节,并将十六进制转换回 Base64,支持 URL-safe。
开发00
Quoted-Printable 编码与解码
将文本编码为 MIME Quoted-Printable(RFC 2045)或解码 — 处理 =XX 转义、软换行与 UTF-8 — 全部在浏览器内完成,编码时按 76 字符换行。
开发00
哈希生成器 (SHA)
根据文本生成 SHA-1、SHA-256、SHA-384 和 SHA-512 哈希。
开发00
URL 编码 / 解码
将文本按百分号编码用于网址,或将编码的网址解码为文本。
开发00
Base64 编码 / 解码
即时将文本编码为 Base64,或将 Base64 解码为文本。
开发00
JSON 格式化与校验工具
在浏览器中格式化、美化、压缩并校验 JSON。
开发00