Facebook Graph API(1)—介绍
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去获取用户的具体信息。再获取用户信息前提是用户必须授权给应用,否则返回空的数据集合。
参考网址:http://developers.facebook.com/docs/getting-started/graphapi/
- scrollTop与offsetTop研究
- JQuery笔记(四) 通用选择的尝试
- Docker容器学习梳理--基础环境安装
- Javascript:模仿淘宝的信用评价
- 好米有好价! 两枚4字母域名均以五位数交易
- Docker容器学习梳理--Volume数据卷使用
- 菜单常用:复位全部并设置某个项的样式
- Mysql更换MyISAM存储引擎为Innodb的操作记录
- 比特币分叉倒计时,糖果福利又来了
- 执行git push出现"Everything up-to-date"
- linux下EOF写法梳理
- 用AngularJS来实现异步数据的购物车功能设计
- span不如div的地方
- 分布式监控系统Zabbix--完整安装记录(7)-使用percona监控MySQL
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 历经14天自定义3个注解解决项目的3个Swagger难题
- 【一天一大 lee】秋叶收藏集 (难度:中等) - Day20201001
- 【译文】Facebook工程师谈运维工作的未来
- 【一天一大 lee】环形链表II (难度:中等) - Day20201010
- 【西法带你学算法】一次搞定前缀和
- 一文快速入门分库分表中间件 Sharding-JDBC (必修课)
- 求求你别再用System.out.println 了!!
- 为什么阿里巴巴Java开发手册中强制要求超大整数禁止使用Long类型返回?
- 独家 | 教你用Python来计算偏差-方差权衡
- 使用 KinD 加速 CI/CD 流水线
- 使用 Docker 加速开发工作流
- Kubernetes CRD 自定义控制器
- 推荐算法之: LFM 推荐算法
- 推荐算法之: DeepFM及使用DeepCTR测试
- Cypress系列(61)- 断言最佳实践