网页能登录、API 返回 401、结账被拒付,通常是三件不同的事。2026-10-26 核对的官方文档里,OpenAI 把「国家、地区或领土不支持」写成 API 的 403;同一天在起草环境里不带密钥去访问,OpenAI 和 Anthropic 都返回 401。下面用状态码和账单页面把它们分开。起草环境不是大陆宽带,因此没有验证大陆出口上的地区拒绝原文。注册和名单见 Claude 与 Gemini 的地区报错和注册,路径不通见 大陆代理连上后仍失败。
OpenAI、Anthropic 和 Google 都没有把中国大陆列为这些 API 的支持地。名单外访问或向名单外提供访问,可能违反条款,并导致账号或密钥被停用。不要使用他人的支付卡、他人的账号或购买来的密钥。本文不是法律意见。
先分开四种失败
| 你看到的结果 | 更像什么 | 下一步 |
|---|---|---|
| 连接超时、TLS 重置,没有 HTTP 状态码 | 路径没有到达对方 | 按现象排查一文查 DNS 和传输 |
| HTTP 401,或明文写着缺密钥、密钥无效 | 认证 | 核对环境变量和请求头,不要先改出口 |
| OpenAI 文档中的 403,正文为地区不支持 | 出口不在 API 名单 | 对照名单,而不是重试同一请求 |
| HTTP 402、429,或页面写着额度用尽 | 账单或限额 | 看控制台账单和重置时间 |
| 回复写到一半套接字断开,没有新的 HTTP 错误 | 长连接中断 | 记下断开是否卡在相近的秒数 |
请求从哪一台机器发出,对方就按这一跳的网络位置做地区判断。把调用放到另一台机器上,不会改变 Anthropic 政策里关于「人在不受支持地区」和「主体注册地、控股地」的限制。机器和隧道的差别只见 VPN 与 VPS,那里不提供接入服务。
OpenAI:401、403 和第一把密钥
List models 的示例是:
curl -sS -D - -o /tmp/openai-models.json -w "\nhttp %{http_code}\n" \
--max-time 30 \
https://api.openai.com/v1/models \
-H "Authorization: Bearer $OPENAI_API_KEY"
密钥放在环境变量里,不要写进命令历史或仓库。2026-10-26,起草环境在不带这个头时访问同一地址,得到 HTTP 401,JSON 里 type 为 invalid_request_error,消息为 “Missing bearer authentication in header”,响应头有 x-request-id。这只证明主机回了认证错误。
错误码 里和这次排查相关的几条是:
| HTTP | 文档中的含义 |
|---|---|
| 401 Invalid Authentication,或 Incorrect API key | 密钥或组织不对 |
| 401 IP not authorized | 请求 IP 不在项目或组织的允许列表里 |
| 403 Country, region, or territory not supported | 从不支持的国家、地区或领土访问 |
429,含 credit_balance_exhausted | 预付额度用完,或触发了速率、支出上限 |
403 的解决办法一栏只指向地区说明,没有给出绕过步骤。支持国家页写明,名单外访问或提供访问,账号可能被封锁或暂停。名单见 API supported countries,2026-10-26 未见中国大陆、香港、澳门,可见 Taiwan。
手机验证说明 写的是:创建 ChatGPT 账号或使用 ChatGPT,一般不要求手机验证;在 platform.openai.com 生成第一把 API 密钥时要求验证。验证码走短信,部分国家可以走 WhatsApp,名单里没有中国。不接受固话、VoIP、Google Voice 和溢价号码。只使用你本人能打开短信的号码。不要购买验证码。
Anthropic:文档头和当天的 401 原文
API 概述 把基址写成 https://api.anthropic.com。它要求 anthropic-version。版本历史页把 2026-10-21 列为建议使用的最新版本,并说明这一版删除了 temperature、top_p、top_k。数据驻留页的示例仍写着 2023-06-01。两个页面同时存在,复制示例前要看版本页,不要混用。
概述把 Authorization: Bearer 写成默认方式,把 x-api-key 写成仍可用的旧式回退。未限定工作区的密钥还要 anthropic-workspace-id。2026-10-26,起草环境对 POST /v1/messages 发送空 JSON,并且两个认证头都没有,得到 HTTP 401,error.type 为 authentication_error,消息为 “x-api-key header is required”,响应头 request-id 形如 req_…。这不能证明带上 Bearer 之后会怎样,也没有用真实密钥测试地区结果。
错误目录 当天没有单独的「国家不支持」类型。目录里的 403 是 permission_error,指密钥没有使用该资源的权限。看到 403 时先按这句理解,不要自动当成地区封锁。地区资格在 supported regions。其它已列出的类型包括:402 billing_error、429 rate_limit_error、504 timeout_error、529 overloaded_error。504 的说明是考虑改用流式 Messages API。联系支持时带上 request-id。
Gemini:列表接口返回 200,不等于能生成
快速入门使用主机 generativelanguage.googleapis.com,密钥放在头 x-goog-api-key。故障排除 写的列表路径是 GET /v1beta/models,最后更新日期是 2026-10-23 UTC。同一页写明:models.list 只检查密钥是否存在,不检查免费层资格或账单;它返回 200,不能说明 generateContent 可用。
2026-10-26,起草环境用无效的 x-goog-api-key 请求该列表,得到 HTTP 400,status 为 INVALID_ARGUMENT,reason 为 API_KEY_INVALID,消息为 “API key not valid. Please pass a valid API key.”。故障页另外记录了 403 PERMISSION_DENIED。若正文是 “Your API key was reported as leaked. Please use another API key.”,官方步骤是在 AI Studio 生成新密钥,并停止把密钥放进客户端代码或公开仓库。不要把旧密钥再提交一次。
故障页建议只对 429、408 和 5xx 做退避重试,不要重试 400、402、403。地区名单见 available regions,当天不含中国大陆、香港、澳门。开发者论坛上有人用 “User location is not supported for the API use” 描述 HTTP 400,并比较 IPv4 与 IPv6。这不是故障页上的正式条目。可以用 curl -4 和 curl -6 分别记下状态码;改地址族不能把名单外的国家变成名单内。
订阅和支付:只用你自己的卡
OpenAI 多币种账单 在 2026-10-26 的货币表里有 TWD,没有 CNY。该文覆盖 chatgpt.com 的标准付费方案;iOS 和 Android 由 Apple 或 Google 扣款。它写明 API 额度购买目前只支持美元。拒付说明 要求购买发生在支持地区,且发卡行位于支持地区。预付卡不能购买 API 额度。3D Secure 失败时,帮助中心让你允许弹窗,并在适用时关掉广告拦截和 VPN,以便银行的验证页打开。这是在结账认证被拦住时的步骤,不是名单外完成订阅的方法。
Claude Pro 是什么 写着美国价格为每月 20 美元,当地货币和含税方式因地区而异,价格可能调整。发布前应再看 claude.ai/upgrade。该页写明 Pro 不包含 Console 里的 API 用量,API 要单独付费。网页版 Pro 和 Max 的支付说明只接受信用卡或借记卡;应用商店订阅走 Apple 或 Google。账单 FAQ 还写了:付完款仍显示免费时,先确认是不是登了另一个邮箱,再到 Settings、Billing 看扣款是否失败。
本文没有打开任何结账页,不能确认页面上是否出现中国大陆或某种卡组织。不要使用别人的卡,也不要让别人用你的卡代付。
长回复断开,先和限额分开
Claude Pro 的帮助页写明:会话用量每五小时重置;另有每周上限,重置时刻在 Settings、Usage 里看。这是额度,不是套接字错误。
若没有新的 HTTP 响应,而是连接在相近的秒数被关掉:
- 记下从发出请求到断开的秒数,以及当时走的是 TCP 还是 HTTP/3。
- Anthropic 的 504 才是对方承认处理超时;那种情况文档建议改为流式。没有 504 时,不要把本地断开记成 504。
- sing-box
v1.14.4(2026-10-24 发布)的规则动作文档里,已嗅探的quic默认udp_timeout为 30 秒;未嗅探时端口 443 会被当成quic。大于 inbound UDP 超时的设置不会生效。细节见 现象排查 和 保活与掉线重连。
密钥和账号不要这样处理
- 不要把密钥放在浏览器前端、移动包或公开仓库。Gemini 故障页把已泄漏的密钥描述为会被主动停用。
- 不要把一把密钥分给多人,也不要购买别人的账号。OpenAI 的支持国家页把「提供访问」和「自己访问」写在同一句风险里。
- 出口短时间在多个国家之间切换,会让同一密钥的来源地址来回跳。固定一个你有权使用的出口,只减少这种跳跃,不构成条款上的许可。共享地址的影响见 共享出口 IP。
- ChatGPT 网页侧的使用习惯见 在中国使用 ChatGPT。
公开文件里的法律范围
《关于清理规范互联网网络接入服务市场的通知》(工信部信管函〔2017〕32号)写明,未经电信主管部门批准,不得自行建立或租用专线(含 VPN)等其他信道开展跨境经营活动。2017 年 1 月 24 日的答记者问说明,对象是无国际通信业务经营资质而开展跨境电信业务经营的企业或个人。本文不判断某种个人使用是否违法,也不写规避执法的做法。
一次失败至少留下这三项
- HTTP 状态码、错误
type或status,以及x-request-id或request-id。没有状态码就注明超时或重置。 - 这次是网页订阅、API 列表,还是真正的生成请求。Gemini 的列表 200 不能代表生成可用。
- 使用的是你自己的卡和密钥,还是在结账页被发卡行拒绝。拒付按帮助中心核对发卡地区和 3D Secure,不要改用别人的卡再试。