`

Facebook实现第三方登陆(WEB)并获取用户信息

阅读更多
网站如何实现用FaceBook登录
1:登陆https://developers.facebook.com/quickstarts/757098871011921/?platform=web注册一个开发者账号

2:创建完成以后,设置自己的app

3:拿到有用的数据 例如:
App ID:1503551219909972
App Secret:65077e3696487b3494450bc2b8253e6f
Site URL :  http://53.164.51.14:8080/     后面的url必须在这个域名或其子域
然后可以开始以下步骤:(以下是分三步实现如何获取facebook账户信息,最后呈现的是json格式的)
Step1: 使用这个步骤可以直接完成Facebook的第三方登陆
<a href="https://www.facebook.com/dialog/oauth?client_id=1503551219909972&redirect_uri=http://54.164.51.14:8080/examples/hello.html&code=acgon">
<img src="https://www.gotobus.com/images/facebook-login.gif" alt=""></a>

href中get方法有四个参数:
client_id : YOUR APP ID
redirect_uri : 登陆后让使用者会返回到你的网站地址,并且附带一个code参数
code : acgon    (这是个固定值)

例如:
http://54.164.51.14:8080/examples/hello.html?code=AQDWZPlnBuXoHT2G96pGwfXSqxrlY7mLUmmBGe4A6Uzjbyb_Mj3iF7rqJaSmwDuLmtkaMOU72NeoYhrOlZjZoBBq7Q5D7xitwZ16L6EU9_7OO5JhtyQmTcHVlpoGBPDWYUibzB65gK4dkArUBTqdYzfcpAu-jP4aehRsd3y5raAMYzs8nrPez8ol97D5IW2Jy80Epnj3tFDJovtFpWXmPKXZ40bNqpP_e_I3fzChe4v1ZX6uWX_56GmEjUiLfXc8Xh7mDnTFucRgZJXT4B_TuQ-q310uAEzBLCTP5dpkiqjVKnc6Az8W0rAZXbHz3a8SbbfJef9bS7mYy1-WyOnznvfB#_=_

Step2:以下两个步骤可以获取登陆者在你Facebook的个人信息
利用facebook 传回来的code参数向facebook取得access_token
$.ajax({
	type: "get", 
	url : "https://graph.facebook.com/oauth/access_token", 
	dataType:'text',
	data: {
	client_id: '1503551219909972',
	redirect_uri: 'http://54.164.51.14:8080/examples/hello.html', 
	client_secret : '65077e3696487b3494450bc2b8253e6f',
	code : code 
	},
	success: function(data){
	var token = data.split("&")[0].split("=")[1];
	},
});

例如:access_token=CAAVXeMxdRVQBAInNR89qiAc2dOpCzVj31GMlhXYm3Q9hkYLSSF2uT2GTlqGUqpsUdZApzQwOyaINSx2MXB8g1nRk7yRklZBG0bTWXfUuQGz9JvENE6zIHGGZB484fZCUrgBIZAB62vm7w8QunKlQUBXA0ysxuJEaKEmEUvtikFKk5KE8hKVaX0nZAi2b1ONDNZBGZAbiZBjgQzGGzgrLupF8d&expires=5110579

Ajax里面有四个参数:
client_id:  YOUR APP ID,
redirect_uri: 一定要和Step1中的redirect_uri一样,
client_secret : 申请的APP SECRET,
code : 前面请求拿到的CODE

Step3: 利用access_token就可以取的使用者的资料
$.ajax({
	type: "get", 
	url : "https://graph.facebook.com/me", 
	dataType:'json',
	data: {
		access_token : token,
	},
	success: function(json){
	},
});

  • 大小: 68.6 KB
  • 大小: 48 KB
  • 大小: 8.2 KB
分享到:
评论

相关推荐

    Simple Facebook Sign-In v2.2

    跨平台游戏和应用程序的跨平台用户身份验证● 无插件,无第三方库,无依赖● 对建筑规模没有影响● 客户端-服务器应用程序更加安全(在客户端获取访问令牌,在服务器上获取所有用户数据以避免篡改)● JSON Web令牌...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    第三章 跨域交互缓存处理设计 17 3.1 跨域交互缓存处理需求 17 3.1.1 缓存技术WebStorage 17 3.1.2 跨域交互缓存处理需求 17 3.1.3 页面回退管理需求 17 3.2 缓存处理机制 18 3.2.1 跨域缓存处理 18 3.2.2页面回退...

    《程序员》杂志2012年第1期.pdf (免费积分下载)

    Web 2.0、云计算发展起来后,为了共享数据,提供更无缝的体验和增值,很多互联网网站和服务开始提供开放API,第三方开发者可以在其上开发软件应用,访问平台的数据或其他功能。这就是我们已经听得耳朵起茧子的开放...

    集体智慧编程.[美]西格兰(带详细书签) PDF 下载

    专门讲述如何挖掘和分析Web上的数据和资源,如何分析用户体验、市场营销、个人品味等诸多信息,并得出有用的结论,通过复杂的算法来从Web网站获取、收集并分析用户的数据和反馈信息,以便创造新的用户价值和商业价值...

    firebase-simple-login:Firebase简单登录Web客户端

    Firebase简单登录提供多种身份验证类型:电子邮件/密码,匿名身份验证以及与Facebook,GitHub,Google和Twitter的第三方集成。 它使您无需手动存储身份验证凭据或运行服务器即可对用户进行身份验证。弃用警告! ...

    java开源包3

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包4

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包1

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包11

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包2

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包6

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包5

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包10

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包8

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包7

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包9

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包101

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    Java资源包01

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    JAVA上百实例源码以及开源项目源代码

    第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在html中 各种EJB之间的调用示例 7个目标文件 摘要:Java源码,初学实例,EJB调用实例  各种EJB之间的调用源码...

    JAVA上百实例源码以及开源项目

    第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在html中 各种EJB之间的调用示例 7个目标文件 摘要:Java源码,初学实例,EJB调用实例  各种EJB之间的调用源码...

Global site tag (gtag.js) - Google Analytics