You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Facebook Graph API通过Code获取用户AccessToken遇服务暂不可用问题

问题描述

我正尝试通过Facebook Graph API,使用授权码(Code)获取用户Access Token。

调用的API请求地址:

https://graph.facebook.com/v17.0/oauth/access_token?client_id={APP_ID}&client_secret={APP_SECRET}&redirect_uri={REDIRECT_URI}&code={CODE}

授权码是通过引导用户访问https://www.facebook.com/v17.0/dialog/oauth获取的,这一步流程正常,但调用上述接口时始终返回如下错误响应:

"error" => [
    "message" => "(#2) Service temporarily unavailable",
    "type" => "OAuthException",
    "is_transient" => 1,
    "code" => 2,
    "fbtrace_id" => {SOME_CODE},
]

我已经尝试过以下操作,但均未解决问题:

  • 延长API调用的间隔时间
  • 确保redirect_uri参数与授权请求中的值完全一致
  • 将应用从测试模式切换为正式模式
可能的解决方向
  • 检查权限审核状态:即使切换到Live模式,若应用申请的核心权限未通过Facebook审核,也可能触发这类服务不可用错误。到Facebook开发者后台查看应用的权限审核记录,确认所需权限已获批。
  • 验证授权码有效性:授权码(code)有效期通常为10分钟,且只能使用一次。确保当前使用的code是最新获取且未被调用过的,避免因重复使用或过期导致失效。
  • 切换API版本测试:尝试将API版本切换到相邻的稳定版(比如v16.0或v18.0),部分旧应用可能存在特定版本的适配问题。
  • 排查IP限制:如果是服务器端发起请求,检查该IP是否被Facebook临时限制。可以尝试更换IP地址再发起请求测试。
  • 确认Facebook服务状态:Facebook的OAuth服务偶尔会出现区域性故障,可查看官方系统状态页面确认是否存在对应服务的故障。
  • 核对应用密钥信息:再次仔细核对client_id和client_secret是否与开发者后台的应用信息完全匹配,避免因字符拼写、大小写错误导致验证失败。

内容的提问来源于stack exchange,提问作者Luka Zavrl

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 00:10:13