身边有朋友在处理 ChatGPT 订阅异常或者核对账户标识时,习惯直接打开 chatgpt.com/api/auth/session 把整个页面返回的 JSON 复制出去。
看过这个接口返回结构的应该都知道,最底部直接明文带着当前会话的 accessToken(JWT 格式)。只要在有效期内,拿到这个字段就等同于拿到了完整的登录态,可以绕过密码和 2FA 直接调接口或操作账户。
实际上用来区分账户归属的只是 account.id 字段(UUID 格式的 Account ID,本身不包含鉴权凭据)。为了避免手动复制 JSON 时不小心把底部的 accessToken 一起粘出去,我写了个简单的 Tampermonkey 油猴脚本,只在本地浏览器同源请求并提取 account.id。
如果只是偶尔查一次,不想装脚本,登录 chatgpt.com 后按 F12 在 Console 跑这一行就行:
fetch('/api/auth/session').then(r=>r.json()).then(s=>console.log('Account ID:', s?.account?.id || '未找到'))
如果平时需要频繁核对多账号或者排查订阅状态,可以直接用仓库里的 tools/get-account-id.user.js。
脚本逻辑很简单(总共 50 多行纯原生 JS,无外部依赖):
chatgpt.com 域名下注册油猴菜单项 查询 Account ID(本地)/api/auth/session 并解析 account.id另外在 tools/check_connection.py 里顺手放了个零依赖的 Python 小脚本,用来在终端快速测试相关公开页面的 HTTP 状态码、响应耗时与超时排查。
最近 OpenAI 调整了 Plus、Pro 各档位的额度策略,加上不少人在终端用 Codex CLI(Sign in with ChatGPT 模式 vs API Key 模式)时经常遇到额度扣减异常或者已扣款仍显示 Free 的问题,我把 2026 最新的套餐对比、Codex 额度计算规则、银行卡拒付(AVS/卡段风控)排查整理在了同一个仓库里。
代码和文档都很简单,主要图个安全省事。如果对大家有用欢迎点个 Star,文档里有出入的地方也欢迎提 Issue 补充。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.