无法使用 Graph API 2.3 post 到 FB 页面
Unable to post to FB page using Graph API 2.3
我花了很长时间试图让它工作,并花了同样长的时间在论坛(包括这个)上搜索答案。不幸的是,我似乎找不到任何解决这个问题的办法......
我创建了一个 FB 应用程序,用于 post(作为页面)到 FB 中的页面。
通过调试,我得到了整个 URL 作为:
https://graph.facebook.com/216065898461057/feed?access_token={访问令牌}
"access code" 是页面访问代码,我还在 URL 中包含了 "page-id" 。我引用FB文档:
When a user access token of a Page admin is in the request such as
POST /v2.3/{page-id}/feed, the action occurs with the voice of the
user, instead of the Page. To publish as the Page, you must now use
the Page access token.
运行 我从 FB 收到以下错误代码:
"The remote server returned an error: (403) Forbidden."
如果我使用 FB Graph Explorer 做同样的事情,我会收到以下错误:
{ "error": {
"message": "(#200) The user hasn't authorized the application to perform this action",
"type": "OAuthException",
"code": 200,
"fbtrace_id": "GgRkiy/i6tP" } }
现在,许多 post 会建议为应用程序添加必要的权限,但我目前已批准以下内容:
email, manage_pages, public_profile, publish_actions, publish_pages,
user_friends, user_managed_groups
我的理解是你在v2.3中应该只需要publish_pages。
谁能看出为什么这行不通!
"The user hasn't authorized the application to perform this action" 通常只表示一件事:您的访问令牌缺少正确的权限。在这种情况下,它将是 publish_pages
。你绝对应该有 manage_pages
,因为你需要它来获得页面令牌。这些是您 post 访问页面 "as Page".
所需的唯一两个权限
确保在获取页面令牌之前使用 publish_pages
授权用户。
我花了很长时间试图让它工作,并花了同样长的时间在论坛(包括这个)上搜索答案。不幸的是,我似乎找不到任何解决这个问题的办法......
我创建了一个 FB 应用程序,用于 post(作为页面)到 FB 中的页面。
通过调试,我得到了整个 URL 作为:
https://graph.facebook.com/216065898461057/feed?access_token={访问令牌}
"access code" 是页面访问代码,我还在 URL 中包含了 "page-id" 。我引用FB文档:
When a user access token of a Page admin is in the request such as POST /v2.3/{page-id}/feed, the action occurs with the voice of the user, instead of the Page. To publish as the Page, you must now use the Page access token.
运行 我从 FB 收到以下错误代码: "The remote server returned an error: (403) Forbidden."
如果我使用 FB Graph Explorer 做同样的事情,我会收到以下错误:
{ "error": { "message": "(#200) The user hasn't authorized the application to perform this action", "type": "OAuthException", "code": 200, "fbtrace_id": "GgRkiy/i6tP" } }
现在,许多 post 会建议为应用程序添加必要的权限,但我目前已批准以下内容:
email, manage_pages, public_profile, publish_actions, publish_pages, user_friends, user_managed_groups
我的理解是你在v2.3中应该只需要publish_pages。
谁能看出为什么这行不通!
"The user hasn't authorized the application to perform this action" 通常只表示一件事:您的访问令牌缺少正确的权限。在这种情况下,它将是 publish_pages
。你绝对应该有 manage_pages
,因为你需要它来获得页面令牌。这些是您 post 访问页面 "as Page".
确保在获取页面令牌之前使用 publish_pages
授权用户。