启用调试模式后,图谱 API 响应可能包含其他字段,这些字段可用于说明请求的潜在问题。
如要启用调试模式,请使用 debug
查询字符串参数。例如:
curl -i -X GET \
"https://graph.facebook.com/{user-id}
?fields=friends
&debug=all
&access_token={your-access-token}"
如果未授予 user_friends
权限,此请求将产生以下响应:
{ "data": [ ], "__debug__": { "messages": [ { "message": "Field friends is only accessible on User object, if user_friends permission is granted by the user", "type": "warning" }, { "link": "https://developers.facebook.com/docs/apps/changelog#v2_0", "message": "Only friends who have installed the app are returned in versions greater or equal to v2.0.", "type": "info" } ] } }
可以将 debug
参数值设为“all”或与所请求消息的 type
对应的最低严重性级别:
调试参数值 | 返回内容 |
---|---|
all | 所有可用的调试消息。 |
info | 类型为 info 和 warning 的调试消息。 |
warning | 类型仅为 warning 的调试消息。 |
系统将在 messages
数组中的 __debug__
键值下,以 JSON 对象的形式返回调试信息(如适用)。此数组的每个元素都是包含以下字段的 JSON 对象:
字段 | 数据类型 | 说明 |
---|---|---|
消息 | 字符串 | 消息。 |
类型 | 字符串 | 消息严重性。 |
链接 | 字符串 | [可选] 指向相关信息的网址。 |
您还可以将调试模式与图谱 API 探索工具搭配使用。
如果您在构建应用并发出图谱 API 请求,则会发现确定自己通过哪个版本的 API 获得响应非常有用。例如,如果您在未指定版本时发出调用,那么您可能并不了解作出响应的 API 版本。
图谱 API 会为调用 facebook-api-version
的响应提供请求标头,以表明生成该响应的 API 的具体版本。例如,使用 v2.0 版本的 API 生成请求的图谱 API 调用将产生以下 HTTP 标头:
facebook-api-version:v2.0
您可借此 facebook-api-version
标头确定 API 调用是否会从您希望的 API 版本返回结果。
通过图谱 API 报告缺陷时,我们还会加入一些其他请求标头,并将其与您的缺陷报告一同发出,以帮助我们查明并再现您的问题。这些请求标头为 X-FB-Debug
、x-fb-rev
和 X-FB-Trace-ID
。