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){
	},
});

猜你喜欢

转载自18767136122.iteye.com/blog/2154940