Twitter ID 为何用字符串传输:JS 只能精确表示 53 位整数
arpit_bhayani · x · 2026-10-26
工程师 arpitbhayani 解释了 Twitter API 为什么把 64 位 Tweet ID 以字符串形式下发:
- Twitter 用 Snowflake 算法生成 ID,把时间戳、worker ID 和本地序列号打包进 64 位整数,天然支持按时间排序和分布式无协调生成。
- 问题出在客户端:JS 的 JSON.parse 把数字解析为双精度浮点数,尾数只有 53 位,64 位整数会被舍入导致 ID 损坏。
- 因此 Twitter 用字符串作为线上格式;虽然 JS 有 workaround,但只要任一客户端处理出错,ID 仍会被破坏。
「Infra」频道最新
- Anthropic S-1:每 1 美元收入烧 48 美分算力成本 — nmasc_ · 2026-10-26
- Persistent AI 入驻 UR 网络,隐私推理流量全程加密 — 0xSammy · 2026-10-26
- Anthropic 算力承诺曝光:Google 至少 1145 亿美元居首 — BenBajarin · 2026-10-26
- SpaceX 与 Apollo 达成 400 亿美元 AI 芯片与数据中心硬件租赁协议 — Polymarket · 2026-10-26
- Diamandis 盘点:SpaceX AI 业务年增 830%,Claude 64 小时设计 31.8 万抗毒蛋白 — PeterDiamandis · 2026-10-26
- Meta 拟发售至多 950 亿美元股票为 AI 基建输血 — The Decoder · 2026-10-26