为Facebook应用程序选择图形API或旧的REST API
我应该在Facebook开发人员论坛上提出这个问题,但不知何故我无法注册到论坛,Facebook连接功能在写这篇文章的时候不工作。为Facebook应用程序选择图形API或旧的REST API
无论如何,我仍然对我的Facebook应用是否使用Graph API或旧的REST API感到困惑。 通常,这是我想要在我的应用程序中实现的:
- 获取用户的个人资料图片和用户名。
- 获取用户的朋友的个人资料图片和名称,他们也在使用我的应用程序。
- 发布到用户的流中。
- 允许用户邀请他们的朋友使用该应用程序。
有人能给我一个见解,哪一个更适合我的应用?
- 获取用户的个人资料图片和名称。
-
http://graph.facebook.com/[uid]
为名称和http://graph.facebook.com/[uid]/picture
是始终最新的链接到当前图片。另外,如果您有access_token,则可以查询http://graph.facebook.com/me以获取当前用户的数据,无论是谁。
-
- 获取用户的朋友的个人资料图片和名称谁也使用我的应用程序。
- 不知道如何才能得到特定的朋友,也许使用FQL。但是请注意,你可以在好友列表中的特定字段添加一个
fields
参数(默认为只是名称和ID):.../friends?fields=id,name,picture
- 不知道如何才能得到特定的朋友,也许使用FQL。但是请注意,你可以在好友列表中的特定字段添加一个
- 后到用户的信息流。
- 使用
body
参数对http://graph.facebook.com/[uid]/feed执行HTTP POST。 (请参阅http://developers.facebook.com/docs/api#publishing)
- 使用
- 允许用户邀请他们的朋友使用该应用程序。
- 对不起,不知道在这一个...
使用Graph API,因为它包含了旧REST API所具有的所有内容。 Plus新的API是RESTful,并且结果以JSON返回,这很好!
加 - 更友好的服务条款;减号 - 任何新类型数据的扩展权限请求;-) – zerkms 2010-04-22 21:55:02
正如RENESIS说,图形API涵盖了你所需要的东西的前三个步骤。
对于第四点,我一直在寻找的API广泛用于我自己的应用,并已发现了如何通过FBML
用下面的代码做到这一点:
<fb:serverFbml>
<script type="text/fbml">
<fb:fbml>
<fb:request-form
method='POST'
type='join my Smiley group'
content='Would you like to join my Smiley group?
<fb:req-choice url="http://apps.facebook.com/smiley/yes.php"
label="Yes" />'
<fb:req-choice url="http://apps.facebook.com/smiley/no.php"
label="No" />'
<fb:multi-friend-selector
actiontext="Invite your friends to join your Smiley group.">
</fb:request-form>
</fb:fbml>
</script>
</fb:serverFbml>
http://developers.facebook.com/docs/guides/canvas/#requests
它似乎斯科特的说法不正确,他说Graph包含了旧的REST API所具有的一切:
“我们当前正在处理 将我们的核心服务器API从 旧REST API升级到更现代的Graph API。然而,大多数方法 所需的画布应用程序到 与Facebook集成尚未 升级到新的API。对于 目前,我们建议您使用旧的REST API在画布上应用 ,而不是为求完整性 新的API继续 。”
(我只能发布一个超链接,那么它的与#requests超链接相同,但是在“制作API调用”部分)
不确定这是否与其他集成方法(如Web或桌面应用程序)一样,但到目前为止看起来好像Graph API有点赶上做!
编辑:
要列出用户的朋友的个人资料图片,使用以下命令:
假设你已经拿到了当前用户的ID
https://graph.facebook.com/**USER-ID**/friends?fields=picture,name&access_token=**ACCESS-TOKEN**
这将提供一个JSON对象具有的列表当前用户的朋友包含UID,姓名和指向小版本个人资料图片的链接。
我还没有找到一种方法来检索搜索的大图版本又那么与该方法,如果你想在大的版本,你必须通过每个用户迭代,并使用此:
https://graph.facebook.com/**USER-ID**/picture?type=large
屏蔽了屏幕录像,主要开发人员建议使用Graph,但那里有Cleary是通过Graph无法实现的事情。不确定是否支持Connect.registerUsers。 – timpone 2010-04-22 19:58:53
很高兴知道别人在Facebook开发者论坛上遇到问题。 – Nicole 2010-04-23 01:38:45
@Renesis:实际上每个人都有FB论坛的问题;-) – zerkms 2010-04-23 13:41:49