Facebook Graph权限不正确

问题描述 投票:7回答:2

我正在尝试更新我的代码以使用FB Graph 3.0。

登录流程正常,我请求我的权限,用户授予他们。后来使用PHP SDK的PHP代码意味着发布到用户的时间轴。

$r = $this->facebook->get('/me/permissions');
$result = $this->facebook->post('/me/feed/', $fbpost);

如果我检查$r,我可以看到我有所需的权限:

manage_pages: granted
publish_pages: granted
public profile: granted
pages_show_list: granted

然而,当它发出实际请求时,它会失败并出现错误:(#200) Requires either publish_actions permission, or manage_pages and publish_pages as an admin with sufficient administrative permission

当我尝试将publish_actions grant添加到我的登录名(使用javascript库)时,我收到一个错误,它是无效的:Invalid Scopes: publish_actions.尽管FB自己的文档在几个示例中显示了这个确切的范围。

谁能指出我做错了什么?

编辑:我不是所有关心publish_actions范围已经改变,但我明白这可能是一个新的变化,不是在文档中 - 但我确实有manage_pagespublish_pages权限,但我仍然不能发布到我的时间轴,错误代码似乎表示没有设置这些权限。

php facebook facebook-graph-api facebook-javascript-sdk
2个回答
1
投票

FB v3.0 API /me/feed endpoint documentation中所述,您需要user_posts权限(未在您的授权权限中列出)才能在此端点上进行读取和发布。 Publish_x权限仅与页面和组相关,而非与个人Feed相关。

如果没有评论提醒,请查看FB应用程序的主板,最近的立法变更(GDPR ...)和Facebook问题(Cambridge Analytica等...)已经在API中进行了很多更改。


0
投票

我不是FB API专家,但Twitter最近删除了自动发布到FB的功能 - 我的假设是在最新的FB图形API中不再可能自动发布到用户的时间轴。至少,与第三方开发人员可以期待非技术客户处理相比,它需要更多的跳跃。

https://help.twitter.com/en/managing-your-account/link-twitter-to-facebook

© www.soinside.com 2019 - 2024. All rights reserved.