是否代表用户喜欢页面?

时间:2011-04-29 20:22:07

标签: facebook oauth facebook-graph-api

我正在尝试通过SDK让用户“喜欢”某个页面。用户已登录,我从cookie获得有效的访问权限。我的APP已请求权限read_streampublish_stream。我可以成功地做一些事情,比如张贴到他们的墙上等等。但是当我的APP试图“喜欢”一个页面时,我得到了错误:

OAuthException: (#3) Application does not have the capability to make this API call.

我是否遗漏了其他一些许可,或者我的APP中是否有必须打开的设置?我在这里不知所措。

4 个答案:

答案 0 :(得分:23)

您不能代表用户(Bugzilla discussion)喜欢网页。但是,您可以代表用户填写帖子,评论和照片。


编辑7/9/2012

由于bugzilla不存在,上面链接的bug无法访问。 Google没有该页面的缓存版本,因此我运行了另一个搜索。我能提出的最好的事情是关于ActionScript API的Google Code Discussion

Facebook在文档中通过Graph API简要提及了Publishing likes,但是没有说明你是否可以代表用户喜欢一个页面 - 只是“对象”(可能是可以说是)不是Facebook-lingo中的“对象”。

我的想法是,可以使用相似页面的API,但仅提供给由“特殊”发布商编写的白名单应用程序(例如,Facebook iOS和Android应用程序)。有明显的理由说明Facebook不希望/允许开发人员在图表上创建类似的连接。它将被垃圾邮件制造者和其他邪恶的开发者利用,并且会恶化“喜欢”代表Facebook页面的含义。

我的猜测是,你必须向Facebook提出一个非常强有力的案例,说明为什么你需要/想要访问Page的Like连接(用于发布),然后才考虑让你访问。我还猜测他们想要验证你是否正在进行 用户启动之类的创作(以iOS应用程序处理它的方式)至于保护“喜欢”行动的感知/意义。

答案 1 :(得分:2)

实际上这不是真的,但你必须做一个复杂的Javascript / UIWebView过程才能在你的视图上显示一个类似按钮的Facebook'页面',这就像你可以在JavaScript / Objective中配置的按钮-C(使用字符串替换)是您喜欢的任何Facebook页面网址。

答案 2 :(得分:1)

Facebook's platform policies除了使用officially supported options

外,不允许使用基于网络的按钮

这些选项不需要使用OAuth或Open Graph API。但是,Facebook刚刚添加了对mobile apps to send like actions through opengraph的支持。

我不确定他们是否打算允许网站自定义类似按钮或只是应用...

答案 3 :(得分:-1)