Facebook Oauth2.0 API调用方法
这些天搞了下Facebook API的东东,在官方网站下弄了一些接口,下面简单的把facebook的调用流程以及常用接口书序一下 :-)
当然在使用facebook api之前要有facebook账号以及在facebook上注册一个自己的应用
1.登录鉴权
https://graph.facebook.com/oauth/authorize?client_id=8888888888888&redirect_uri=http://www.mywebsite.com&scope=user_about_me,user_activities,user_birthday,user_education_history,user_events,user_groups,user_hometown,user_interests,user_likes,user_location,user_notes,user_online_presence,user_photo_video_tags,user_photos,user_relationships,user_religion_politics,user_status,user_videos,user_website,user_work_history,read_friendlists,read_requests,publish_stream,create_event,rsvp_event,sms,offline_access,friends_about_me,friends_activities,friends_birthday,friends_education_history,friends_events,friends_groups,friends_hometown,friends_interests,friends_likes,friends_location,friends_notes,friends_online_presence,friends_photo_video_tags,friends_photos,friends_relationships,friends_religion_politics,friends_status,friends_videos,friends_website,friends_work_history,read_stream,photo_upload
字段说明:client_id :注册应用后即可得到
redirect_uri :登录鉴权回调页面
scope :允许用户访问的facebook模块(可在官网上找到齐全的)
登录鉴权之后会回调到你给定的redirect_uri,此时会在你的url后面带上facebook给定的结果参数,其中auth_token是我们下面需要的
2.获取鉴权标示
https://graph.facebook.com/oauth/access_token?client_id=8888888888888&redirect_uri=http://www.mywebsite.com&client_secret=3dfdsa5425fdsa7554520720df8&code=............
字段说明:client_id :注册应用后即可得到
redirect_uri :回调页面
client_secret:注册应用后即可得到
code :在登录鉴权后返回的auth_token值
这里接口会类似第一步一样返回给我们一个access_token的值,下面我们就需要用这个access_token值做如下操作了(access_token值可存储起来,下次继续使用):
A. 查询个人信息
https://graph.facebook.com/me?access_token=... 备注:“me”可替换成任意用户的ID。
可添加fields参数查询相应的个人信息字段,字段集如下:
fields=id,name,first_name,middle_name,last_name,gender,locale,languages,link,username,third_party_id,timezone,updated_time,verified,bio,birthday,education,email,hometown,interested_in,location,political,favorite_athletes,favorite_teams,quotes,relationship_status,religion,significant_other,video_upload_limits,website,work,picture 用户自定义图片还可以这样获得:
https://graph.facebook.com/me/picture?access_token=...
B. 查询好友
https://graph.facebook.com/me/friends?access_token=... 备注:“me”可替换成任意用户的ID。 或者可以用FQL形式:
https://graph.facebook.com/fql?q=SELECT uid2 FROM friend WHERE uid2 = me()
C. 查询个人动态信息
https://graph.facebook.com/me/feed?access_token=... 备注:“me”可替换成任意用户的ID。 或者可以用FQL形式:
https://graph.facebook.com/fql?q=SELECT status_id, time, source, message FROM status where uid = me()&access_token=...
D. 查询用户所有的动态信息(包括自己/朋友/系统) https://graph.facebook.com/me/home?access_token=... 备注:“me”可替换成任意用户的ID。 或者可以用FQL形式:
https://graph.facebook.com/fql?q=SELECT%20status_id,%20time,%20source,%20message%20FROM%20status%20where%20uid%20in%20%28SELECT%20uid1,%20uid2%20FROM%20friend%20WHERE%20uid1%20=%20me%28%29%29&access_token=...
E. 发表动态
需要用到post方式提交,url为: https://graph.facebook.com/me/feed/
参数为:
message = "add news feed test!!!"; access_token = "...";
以下是一些比较常用的接口提供,facebook官方开发文档地址:
http://developers.facebook.com/docs/reference/api/
所有facebook提供的接口都可以在官方提供的浏览器工具上测试(或者直接拼装好url在ff上测试即可看到返回效果,在IE上可能会提示下载):
官方提供的浏览器工具地址:http://developers.facebook.com/tools/explorer
官方论坛也不错:http://stackoverflow.com
Twitter API调用例子:http://download.csdn.net/detail/dingding5060/3715744
Facebook Oauth2.0 API调用方法的更多相关文章
- 程序员的长安十二时辰:Java实现从Google oauth2.0认证调用谷歌内部api
最近公司在做一个app购买的功能,主要思路就是客户在app上购买套餐以后,Google自动推送消息到Java后端,然后Java后端通过订单的token获取订单信息,保存到数据库. Java后端要获取订 ...
- Zabbix3.0 API调用
Zabbix API 是什么? API简单来说是服务对外开放的一个接口,用户通过该接口传递请求,完成操作.API的背后是一组方法的集合,这些方法实现了服务对应的不同功能,调用API实际上就是换了一种方 ...
- 关于淘宝的数据来源,针对做淘宝客网站的淘宝api调用方法
上次写了个淘宝返利模式的博客,直接被移除首页,不知道何故啊.可能是真的跟技术不太刮边. 众所周知,能够支撑一个网站运营的最基础不是程序写的多么好.也不是有多么牛X的运营人员,最主要的是数据,如果没有数 ...
- bing翻译API调用方法
概述 前一段时间,遇到一个需求,需要对文章进行翻译,由于客户公司员工有国内的人员,也有国外的人员,为了照顾国外的同事,客户提出,当用户在手机端发布帖子,需要同时把帖子的内容翻译成英文,方便用户阅读.于 ...
- html5 自带全屏API调用方法
function FullScreen(){ var el = $('html')[0];//要全屏的元素,如果要全页面全屏,建议使用html节点而不是body节点 var isFullscreen= ...
- LUIS 语义识别API调用方法
本例使用itchat获取微信文字消息,发送给LUIS返回识别消息,再将返回消息格式化后通过微信发回 关于itchat的使用参考我的另外一篇随笔itchat个人练习 语音与文本图灵测试例程 # -*- ...
- REST API 调用 方法
METHOD DESCRIPTION GET Retrieves the specified resource POST Creates a resource ...
- 完整的分页存储过程以及c#调用方法
高效分页存储过程 USE [db] GO /****** 对象: StoredProcedure [dbo].[p_Page2005] 脚本日期: // :: ******/ SET ANSI_NUL ...
- OAuth2.0学习(1-11)新浪开放平台微博认证-使用OAuth2.0调用微博的开放API
使用OAuth2.0调用API 使用OAuth2.0调用API接口有两种方式: 1. 直接使用参数,传递参数名为 access_token URL 1 https://api.weibo.com/2/ ...
随机推荐
- Socket INADDR_ANY详解
转载:http://hi.baidu.com/zorro_knight/item/37af9e8c9dc71253e73d1924 linux下的socket INADDR_ANY表示的是一个服务器上 ...
- 关于给springboot添加定时器的两种方式
原文:https://blog.csdn.net/liboyang71/article/details/72781526 首先,搭建好一个springboot项目,可使用maven或者gradle或者 ...
- 菜鸟的mongoDB学习---(七)MongoDB 备份(mongodump)与恢复(mongorerstore)
MongoDB数据备份 在Mongodb中我们使用mongodump命令来备份MongoDB数据. 该命令能够导出全部数据到指定文件夹中. mongodump命令能够通过參数指定导出的数据量级转存的s ...
- 一次SQL查询语句的优化
1.项目中之前的"我关注的拍品列表"需要添加筛选功能,因为目前显示的关注的拍品太多没有进行分类,用户体验差. 2.添加筛选条件之后,可以筛选出“未开始”“进行中”“已结束”三种情况 ...
- Android(安卓)开发通过NDK调用JNI,使用opencv做本地c++代码开发配置方法 边缘检测 范例代码
以前写过两个Android开发配置文档,使用NDK进行JNI开发,这样能够利用以前已经写好的C++代码. 前两篇博客地址: http://blog.csdn.net/watkinsong/articl ...
- SQL VM上磁盘延迟高, 但Host和Storage Array上的延迟却很低的问题
按照下面的步骤, 问题解决. =========================== Per Microsoft DDK, Microsoft storport.sys maintains a dev ...
- java实现ssl单/双向认证通信[推荐]
java实现ssl单/双向认证通信[推荐] 学习了:https://blog.csdn.net/zbuger/article/details/51695582 学习了:https://www.cnbl ...
- 初始小R-安装启动与测试
非常感谢<深入浅出数据分析>这本书让我有幸认识了R,多多少少的弥补了我心里对R语言.R分析.R工具的模糊认知,下面我们就来体验一下R语言的魅力吧!GO! 一:下载R R官方地址:http: ...
- ActiveMQ API 详解
4.1 开发JSM的步骤 广义上说,一个JMS 应用是几个JMS 客户端交换消息,开发JMS 客户端应用由以下几步构成: 用JNDI 得到ConnectionFactory 对象: ...
- CSS兼容性解决方法!important的IE7,Firefox问题
转自:http://www.codesky.net/article/201008/139903.html 1. 首先谈谈!important问题的引起(盒模型问题): 在CSS标准中,一个盒模型包括4 ...