2010-07-27 34 views
6

我通过Facebook连接(从我的外部网站)发布一些信息到用户的墙上。Facebook的连接 - 图API与旧的JavaScript SDK(动作链接)

所有工作都很好,但我注意到了Graph API和旧JavaScript SDK中墙贴文档的一些差异。

随着图形API,张贴到用户的墙上,你执行以下操作:

  • 做一个HTTP POSThttps://graph.facebook.com/ {0} /饲料的access_token = {1}(其中0? =用户的ID,1 =该用户的oAuth访问令牌)。
  • HTTP POST中,在数据中指定了以下参数:消息,链接,图片,名称,标题,说明,来源。

这是此页上的所有详细资料:

客户端JavaScript函数有:http://developers.facebook.com/docs/reference/api/post

现在,随着FB.Connect.streamPublish方法(旧的JavaScript SDK)这个对比以下参数:

  • USER_MESSAGE
  • 附着
  • action_links
  • target_id
  • user_message_prompt
  • 回调
  • auto_publish
  • actor_id

此操作此页面上详细介绍:http://developers.facebook.com/docs/reference/oldjavascript/FB.Connect.streamPublish

现在,在图中的操作API与旧的JavaScript API非常相似类似的,除了一个重要参数 - “action_links”。

从上面的链接:

行动字典链接对象, 包含链接文本和一个 超链接。

本质上,这允许您创建额外的链接旁边的墙上贴“评论”和“喜欢”按钮。这就是我想要做的,即我想要另一个名为“在MySite上做某事”的按钮。

为什么我不能使用Graph API来做这个? WTF Facebook,为什么你会创建一个新的“RESTful”API,它不具备传统API的所有功能?

让我感到恼火的是,“Feed”对象在JSON中确实收集了“操作链接”(如果您倾向于请求此信息)。

但它几乎就像Facebook已经删除了使用Graph API创建操作链接的能力。那是怎么回事?

我在这里错过了什么吗?我真的不想用旧的JavaScript API取代Graph API调用。

请帮忙!

编辑:

好啦,好啦,看我找到了什么: http://bugs.developers.facebook.com/show_bug.cgi?id=11257

这似乎有一个 '错误',其中Facebook的图形API不支持动作链接。

什么时候“错误”的定义成为“我们遗漏的东西”?

叹息,回到旧的JavaScript SDK。

Facebook,我厌恶你。

+0

http://developers.facebook.com/docs/reference/javascript/FB.ui – klochner 2010-08-24 00:20:04

+0

@klocher - 是的,我知道,这是香港专业教育学院不得不用(IM使用旧的JavaScript API - 但你的链接是新的)。 – RPM1984 2010-08-24 01:17:15

回答

3

这个问题没有“Graph API”解决方案 - 因为Facebook开发者已经提交了一个错误(参见上面的编辑)。

目前唯一的解决方案是恢复到旧的REST API或JavaScript API来完成发布。

荒谬的东西。

4

Facebook已经将这个添加到图形api中,并带有“actions”参数。请参阅此链接文档:

Facebook Graph API Post to Feed Method

+0

是的,我知道,我订阅了3个月的错误,遗憾的是他们没有修复我需要上线的时间。 :) – RPM1984 2010-11-17 20:55:48

+0

有没有一个这样的样子,当与JavaScript SDK一起使用的例子? – tkahn 2010-11-22 12:43:19