
- Firebase 教程
- Firebase - 首页
- Firebase - 概述
- Firebase - 环境设置
- Firebase - 数据
- Firebase - 数组
- Firebase - 写入数据
- Firebase - 写入列表数据
- Firebase - 写入事务性数据
- Firebase - 读取数据
- Firebase - 事件类型
- Firebase - 分离回调
- Firebase - 查询
- Firebase - 数据过滤
- Firebase - 最佳实践
- Firebase - 电子邮件身份验证
- Firebase - Google 身份验证
- Firebase - Facebook 身份验证
- Firebase - Twitter 身份验证
- Firebase - Github 身份验证
- 匿名身份验证
- Firebase - 离线功能
- Firebase - 安全性
- Firebase - 部署
- Firebase 有用资源
- Firebase - 快速指南
- Firebase - 有用资源
- Firebase - 讨论
Firebase - Facebook 身份验证
本章将介绍如何使用 Firebase Facebook 身份验证对用户进行身份验证。
步骤 1 - 启用 Facebook 身份验证
我们需要打开 Firebase 控制台,并在侧边菜单中点击身份验证。接下来,我们需要在选项卡栏中选择登录方法。我们将启用 Facebook 身份验证,并保持此页面打开,因为在完成步骤 2 后,我们需要添加应用 ID和应用密钥。
步骤 2 - 创建 Facebook 应用
要启用 Facebook 身份验证,我们需要创建一个 Facebook 应用。点击此链接开始。应用创建完成后,我们需要将应用 ID和应用密钥复制到 Firebase 页面(我们在步骤 1 中保持打开状态)。我们还需要将此窗口中的OAuth 重定向 URI复制到 Facebook 应用中。您可以在 Facebook 应用控制台的侧边菜单中找到+ 添加产品。
选择Facebook 登录,它将出现在侧边菜单中。您将找到输入字段有效的 OAuth 重定向 URI,您需要将 Firebase 中的OAuth 重定向 URI复制到这里。
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
步骤 3 - 连接到 Facebook SDK
将以下代码复制到index.html中body标签的开头。请务必将'APP_ID'替换为从 Facebook 控制台获取的应用 ID。
示例
让我们考虑以下示例。
<script> window.fbAsyncInit = function() { FB.init ({ appId : 'APP_ID', xfbml : true, version : 'v2.6' }); }; (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 = "//#/en_US/sdk.js"; fjs.parentNode.insertBefore(js, fjs); } (document, 'script', 'facebook-jssdk')); </script>
步骤 4 - 创建按钮
我们在前三个步骤中设置了所有内容,现在我们可以创建两个用于登录和注销的按钮。
index.html
<button onclick = "facebookSignin()">Facebook Signin</button> <button onclick = "facebookSignout()">Facebook Signout</button>
步骤 5 - 创建身份验证函数
这是最后一步。打开index.js并复制以下代码。
index.js
var provider = new firebase.auth.FacebookAuthProvider(); function facebookSignin() { firebase.auth().signInWithPopup(provider) .then(function(result) { var token = result.credential.accessToken; var user = result.user; console.log(token) console.log(user) }).catch(function(error) { console.log(error.code); console.log(error.message); }); } function facebookSignout() { firebase.auth().signOut() .then(function() { console.log('Signout successful!') }, function(error) { console.log('Signout failed') }); }
广告