打开链接到其他用户的图表自定义操作

时间:2011-09-29 18:50:25

标签: facebook facebook-opengraph

我对beta Open Graph的内容有疑问。

我正在查看的文档是https://developers.facebook.com/docs/beta/opengraph/ 我成功定义了自定义对象和操作。但是,我无法弄清楚如何将当前用户与其他用户链接。 例如,假设我定义了一个自定义动作'kick'。我希望当前用户能够“踢”他/她的一个朋友。 我能想到的最接近的对象是'profile',但是当我传递user_id,'http://www.facebook.com/profile.php?id ='或http://graph.facebook.com/时,它不起作用。< / p>

这是我试过的请求

POST https://graph.facebook.com/me/myapp:kick?access_token=abc&profile=http%3A%2F%2Fwww.facebook.com%2F123
POST https://graph.facebook.com/me/myapp:kick?access_token=&profile=123
POST https://graph.facebook.com/me/myapp:kick?access_token=abc&profile=http%3A%2F%2Fwww.facebook.com%2Fprofile.php%3Fid%3D123
POST https://graph.facebook.com/me/myapp:kick?access_token=abc&profile=http%3A%2F%2Fgraph.facebook.com%2F123

这是我得到的回复

{"error":{"message":"An unexpected error has occurred. Please retry your request later.","type":"OAuthException"}}

1 个答案:

答案 0 :(得分:3)

给出的配置文件适用于外部网站。他们称之为外部轮廓。相当误导性的术语。

Kicked a website

如您所见,我使用了以下

curl -F 'access_token=TOKEN' \
     -F 'profile=http://graph.facebook.com/zuck' \
        'https://graph.facebook.com/me/MYAPP:kick'

它给出了上述内容。

你可以用来自Facebook用户的元信息填充外部个人资料,它会显示正常(例如我可以发送个人资料网址facebook.com/zuck),但似乎向后,低效而不是预期的用途。

例如喂它我的链接。

curl -F 'access_token=TOKEN' \
     -F 'profile=http://facebook.com/username' \
        'https://graph.facebook.com/me/MYAPP:kick'

Kicked myself

但问题是......我不是音乐家。

虽然看起来在聚合视图中看起来很好。

Aggregation

这很有趣/奇怪,因为此图片中显示的对象之一是Facebook个人资料,因此您可能会认为他们会举例说明Facebook个人资料作为对象。

Graph presentation

虽然他们确实说过

  

我们现在正在扩展Open Graph,以包含第三方应用程序创建的任意操作和对象,并使这些应用程序能够深入整合到Facebook体验中

这很可能意味着他们希望您在Facebook 之外创建任意对象。

您仍然可以链接到其他用户吗?
是的,但通过使用tags=FacebookID1,FacebookID2标记,但它将采用

的形式
  phwd在[APP NAME]上用Friend1和Friend2踢了一个音乐家