无法使用 Facebook Graph API 生成页面访问令牌

use*_*388 6 facebook facebook-graph-api

我似乎无法生成页面访问令牌。我尝试通过从用户或页面下拉列表中选择“获取页面访问令牌”来使用Graph API Explorer,但它会打开一个窗口,并显示以下错误:

在此输入图像描述

我还尝试发送以下 API 请求,但即使它返回200 OK状态代码,内容也是一个空数组!

curl -i -X GET "https://graph.facebook.com/{your-user-id}/accounts?access_token={user-access-token} 
Run Code Online (Sandbox Code Playgroud)

结果:

{"data":[]}
Run Code Online (Sandbox Code Playgroud)

我还尝试使用以下命令获取页面访问令牌:

curl -i -X GET "https://graph.facebook.com/v14.0/<page_id>?access_token=<user_access_token>&fields=access_token"
Run Code Online (Sandbox Code Playgroud)

结果:

{"error":{"message":"(#100) Object does not exist, cannot be loaded due to missing permission or reviewable feature, or does not support this operation. This endpoint requires the 'pages_read_engagement' permission or the 'Page Public Content Access' feature or the 'Page Public Metadata Access' feature. Refer to https://developers.facebook.com/docs/apps/review/login-permissions#manage-pages, https://developers.facebook.com/docs/apps/review/feature#reference-PAGES_ACCESS and https://developers.facebook.com/docs/apps/review/feature#page-public-metadata-access for details.","type":"OAuthException","code":100,"fbtrace_id":"AIx208__9nozhxypMyxZYpy"}}
Run Code Online (Sandbox Code Playgroud)

我的用户被列为该页面的管理员,之前我只需使用上面的 Graph API Explorer 即可创建页面访问令牌。

在 Graph API Explorer 中,我似乎没有“pages_read_engagement”的任何此类选项。

在此输入图像描述

如何生成页面访问令牌?

注意:我也在 Facebook 开发者社区论坛上问过这个问题,但尚未有人回答。这似乎是一个简单的问题,所以我很惊讶到目前为止我还没有得到任何答复。 https://developers.facebook.com/community/threads/911494286473743/

参考号 https://developers.facebook.com/docs/facebook-login/guides/access-tokens#pagetokens

Nic*_* N. 6

请求权限business_management访问权限。文档中没有任何关于此的字,但它为我解决了这个问题。

当我成为元业务经理的正式管理员后,我的问题开始出现。

在此输入图像描述


Viv*_*vek 1

如果您是管理员并且您拥有需要访问令牌的页面的 Facebook 页面 ID,那么您可以使用以下 API 来获取页面访问令牌 -

curl --location --request GET 'https://graph.facebook.com/v14.0/<page_id>?access_token=<user_access_token>&fields=access_token'
Run Code Online (Sandbox Code Playgroud)

您还可以使用 Graph API Explorer 使用用户令牌获取相同的内容。

  • 所需的权限“pages_read_engagement”似乎未包含在列表中(上面添加的屏幕截图)。我是不是找错地方了? (2认同)