Facebook提供三种low-level HTTP APIS去访问Facebook Graph.
1.Graph API
2.FQL(过期)
3.Legacy REST API(过期)
为什么要学习Graph API
1.Open Graph可以让广大用户发现你的应用或者业务
2.可以加入更多社交内容,你的朋友可能会对你的内容感兴趣
3.使用Facebook Login统一登录,可以减少投入,并且可以跨不同设备。
The Graph API Explorer
API Explorer是一个低级工具,使用它开发者可以查询,添加和删除相关数据。对开发者开发应用非常有帮助。
所有的东西在Open Graph中都有ID
Graph API使用的HTTP请求,GET for read, POST for modify & add, DELETE to remove nodes.
示例:你可以在左边选择请求的类型(GET,POST or DELETE),以及任何需要修改的数据。
HTTP请求的路径是: graph.facebook.com
Names
可以根据name来获取用户信息。例如: /yourfacebookname
还有一个特别的路径来访问用户信息:/me 微软Live Connect使用的相同方式来获取用户信息。使用 /me 来获取用户信息需要认证。
Login, Authorization and Permissions 登录,授权和权限
使用Graph API访问数据需要先理解的几个专业术语。
Login:
Facebook Login可以为开发者提供不同的应用接入Facebook登录服务。
Authorization:
授权需要建立在客户端client(mobile or web), your servers(if you have them) and Facebook's Servers.授权的流程
Permissions:
权限是你的应用需要授予何种权限给应用通过Facebook Login.
Access Token:
访问令牌是在授权过程中一个特殊的字符才能,它表示一组已授予的权限,并且可以用在一个特定的应用程序或者一个特定人上。
三种类型的权限
User Data Permissions:用户信息,只读
Friend's Data Permissions:用户好友信息
Extended Permissions:更详细的用户信息或者可以写入内容到用户的Open Graph中。
Connections
连接是通过构建不同的URL通过Graph API去获取用户的具体信息。再获取用户信息前提是用户必须授权给应用,否则返回空的数据集合。