Facebook第三方网页登录(JavaScript SDK)

文档网址:https://developers.facebook.com/docs/facebook-login/web#logindialog

一、应用配置  https://www.facebook.com/login.php?next=https%3A%2F%2Fdevelopers.facebook.com%2Fapps

1.输入跳转网址

应用面板中选择您的应用,然后前往产品 > Facebook 登录 > 设置。在 OAuth 客户端授权设置下的有效 OAuth 跳转网址字段中输入您的跳转网址以获得成功授权。

 

二、登录

参考:https://blog.csdn.net/zh_rey/article/details/78859543

<a href="" id="facebook">  

<script>

// 加载facebook sdk

(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if(d.getElementById(id)) return;
js = d.createElement(s);
js.id = id;
js.src = "https://connect.facebook.net/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));


window.fbAsyncInit = function() {
FB.init({
appId: 'app-your-id',
cookie: true, // 启用cookie
xfbml: true, // 解析此页面上的社交插件
version: 'v2.8' // 使用图形api 2.8版本
});

// 点击按钮登录的代码

document.getElementById("facebook").onclick=function(){
FB.login(function(response) {
if (response.status === 'connected') {
testAPI();
} else {

console.log("该用户没有登录")
}
}, {scope: 'public_profile,email'});
return false;
}

function testAPI() {
FB.api('/me', function(response) {
   FB.api('http://graph.facebook.com/'+response.id+'?fields=first_name,last_name,email', function(data) {
   //获取数据之后填充到对应的input上
   document.getElementById("firstName").value=data.first_name;
   document.getElementById("lastName").value=data.last_name;
   document.getElementById("email").value=data.email;
   });
});
}

</script>

三、退出

 

<button type="button" id="signout">退出</button>

 

<script>
document.getElementById('signout').onclick = function() {
FB.logout(function(response) {
console.log("用户已退出");
});
};
</script>

 

posted @ 2018-07-31 17:23  菜鸡~大神  阅读(8813)  评论(0编辑  收藏  举报