Facebook publish_action权限不适用于发布

时间:2011-11-10 13:31:56

标签: facebook facebook-graph-api permissions facebook-opengraph

目前,我可以使用某些网页的目标向已经喜欢这些网页的Facebook用户发布新闻Feed更新。

现在我正在尝试测试新的开放图和自定义操作来做同样的事情;将更新发布给在我的网站上进行特定操作的用户。但即使我得到我的应用程序的publish_actions权限,并使用我的Facebook帐户和我的应用程序的一些虚拟测试用户帐户(我知道,直到时间轴发布,只有开发人员和测试用户可以使用所述权限),当我尝试发布我收到此错误消息: "{"error":{"message":"(#200) Requires extended permission: publish_actions","type":"OAuthException"}}"

我还将我的应用类型更改为游戏,以便我可以从auth对话框中正确获取publish_actions权限。

任何可以帮助我的想法?或者我必须等到时间线发布才能正确测试新的开放图表发布?

编辑:发送的请求包含这些参数;

to: https://graph.facebook.com/feed
["access_token": "given access token", 
"message": "post message", 
"caption": "post caption", 
"picture":"picture url", 
"link": "link to post", 
"description": "post description", 
"ids": "object ids separated by commas"]

Edit2:我通过添加到时间线按钮询问权限:

<fb:add-to-timeline show-faces="true" mode="button" perms="offline_access,publish_actions,publish_stream"></fb:add-to-timeline>

5 个答案:

答案 0 :(得分:17)

我怀疑你没有正确地要求获得许可。这让我疯狂了好几个小时。即使我正确地要求获得许可并且它似乎进行了身份验证,但实际上未授予权限,因为我没有正确设置应用程序以用于打开图形。

当询问publish_actions时,Facebook会显示一个预览屏幕,显示您的应用在时间轴上创建的聚合类型。

换句话说,如果预览不起作用,Facebook将不会要求获得许可,因此您要求的是徒劳。 Facebook并未在文档中明确说明这一点,但所有内容都需要在Facebook上使用您的应用程序进行完美设置才能使其正常运行。

  1. Enhanced Auth Dialong
  2. 中启用advanced settings of the app
  3. 确保您在action部分设置了至少一个object和一个open graph
  4. 对于每个 action必须设置aggregation
  5. 如果您没有执行所有这些步骤,则无法进行预览,因此无论如何,Facebook都不会要求获得许可。

答案 1 :(得分:12)

我知道发布答案可能已经很晚了[但可能对其他人有帮助],但截至2014年,如果你想向用户发布任何内容[除了app注册开发者]时间表,你需要Facebook权限即应用程序需要提交审批 请参阅以下链接 1)https://developers.facebook.com/docs/facebook-login/permissions/v2.0#review
2)https://developers.facebook.com/docs/apps/review/
3)https://developers.facebook.com/docs/facebook-login/permissions/v2.0
您可以检查它是否位于概述部分的正下方。这已通过最新版本的SDK验证

答案 2 :(得分:4)

目前publish_actions仅适用于您应用的测试用户和开发者(或者如果您的应用属于游戏类别,则可用于发布得分和成就) - 除了测试人员之外,无法发布Open Graph对象和操作你的应用程序 - API仍处于测试阶段

[edit]如果您使用的是添加时间线按钮,则可能需要在应用的高级设置中启用“增强版身份验证对话框”迁移[/ edit]

答案 3 :(得分:1)

我最近遇到了这个问题,我成功地解决了这个问题。

publish_actions 是Facebook必须手动批准该应用使用的范围。需要在应用程序设置页面上开始提交,并详细说明和演示您的应用程序。他们在人工测试人员完成检查应用程序后大约一周内回答。

之后您的方法运作良好。

答案 4 :(得分:-1)

您必须在facebook标准应用安装过程之后安装该应用才能修复该错误!!

我刚刚完成了这个并且错误消失了!!