我正在通过 Facebook Connect(来自我的外部网站)将一些信息发布到用户的墙上。
一切正常,但我注意到 Graph API 和旧 JavaScript SDK 中墙贴的文档存在一些差异。
使用Graph API,要发布到用户的墙上,您可以执行以下操作:
- 向https://graph.facebook.com/ {0}/feed?access_token={1}发送HTTP POST(其中 0 = 用户的 ID,1 = 此用户的 oAuth 访问令牌)。
- 在HTTP POST 中,在数据中指定以下参数:消息、链接、图片、名称、标题、描述、来源。
这在此页面上有详细说明:http: //developers.facebook.com/docs/reference/api/post
现在,将其与FB.Connect.streamPublish方法(旧的 JavaScript SDK)进行对比:
客户端 JavaScript 函数采用以下参数:
- 用户信息
- 附件
- 动作链接
- target_id
- user_message_prompt
- 打回来
- 自动发布
- 演员 ID
此操作在此页面上有详细说明:http: //developers.facebook.com/docs/reference/oldjavascript/FB.Connect.streamPublish
现在,Graph 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 Graph API 不支持操作链接。
“错误”的定义什么时候变成了“我们遗漏的东西”?
唉,回到旧的 JavaScript SDK。
Facebook,我讨厌你。