Facebook认证登录
原文链接:https://developers.facebook.com/apps/934011906804843/fb-login/quickstart/
JavaScript 版 Facebook SDK 无需下载和安装任何独立文件,您只需在 HTML 中添加一小段正确的 JavaScript,即可将 SDK 异步加载至您的页面。异步加载不会阻止浏览器加载页面的其他元素。
以下代码片段将提供基础版的 JavaScript 版 Facebook SDK,其中的选项将设置为最常用的默认设置。在要使用 Facebook 分析的每个页面的 <body>
开始标签后直接插入以下代码片段。将 {your-app-id}
替换为应用编号,将 {api-version}
替换为所指向的 API 的版本号。当前版本是:v3.2
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '{your-app-id}',
cookie : true,
xfbml : true,
version : '{api-version}'
});
FB.AppEvents.logPageView();
};
(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'));
</script>
提供给回调的 response
对象包括许多字段:
{
status: 'connected',
authResponse: {
accessToken: '...',
expiresIn:'...',
signedRequest:'...',
userID:'...'
}
}
status
表示应用用户的登录状态。状态可以是以下某个值:
connected
— 用户已登录 Facebook 和您的应用。not_authorized
— 用户已登录 Facebook,但未登录您的应用。unknown
— 用户未登录 Facebook,所以不知道其是否已登录您的应用,或者FB.logout()
在之前已被调用,因此无法连接至 Facebook。
如果状态为 authResponse
,则响应对象将包括 connected
,分为以下部分:
accessToken
— 包括应用用户的访问口令。expiresIn
— 表示口令到期且需要更新的 UNIX 时间。signedRequest
— 经签名的参数,其中包括应用用户的信息。userID
— 应用用户的编号。
知道用户的登录状态后,应用就可以执行以下操作之一:
如果用户登录了 Facebook 和您的应用,可将他们重定向至应用的登录后体验。
如果用户未登录您的应用,或未登录 Facebook,则可以通过
FB.login()
呈现“登录”对话框提示他们登录,或展示“登录”按钮。
使用按钮的 onlogin
属性设置一个 JavaScript 回调,用于检查登录状态,了解用户是否成功登录:
<fb:login-button scope="public_profile,email"onlogin="checkLoginState();"></fb:login-button>
回调如下所示。它将调用 FB.getLoginStatus()
来获取最新的登录状态。(statusChangeCallback()
是一个函数,属于处理响应的示例的一部分。)
function checkLoginState() {
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
});
}
Facebook认证登录相关推荐
- android App 集成 facebook 第三方认证登录
今天公司一个项目要集成第三方的认证登录,第一次做这种第三方登录,而且因为大陆访问不了 facebook,所以花了比较长的时间才实现功能.其中也有一些需要注意的地方,记录一下,也跟大家一起交流. 一.f ...
- 用 Flask 来写个轻博客 (23) — 应用 OAuth 来实现 Facebook 第三方登录
Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 扩展阅读 第三方登录流程 OAuth 应用 OAuth 实现 Face ...
- Java实现Facebook第三方登录
第一次接触Facebook第三方登录,可能有些地方做的并不全面,只是尝试着做了一个小demo,因为国内接入Facebook的项目并不多,并且多数都是Android或IOS的实现,所以资料也特别少,在此 ...
- facebook第三方登录前后端分离
facebook第三方登录三种实现方式:第三种我认为方便简单 1.js sdk 直接在官网看文档 直接调用他的sdk 官网:https://developers.facebook.com/docs/f ...
- spring security 自定义认证登录
spring security 自定义认证登录 1.概要 1.1.简介 spring security是一种基于 Spring AOP 和 Servlet 过滤器的安全框架,以此来管理权限认证等. 1 ...
- drcom宽带认证登录超时_开发SSO单点登录需要注意的问题
一.单点登录系统开发需要注意的问题 1.单点登录系统需要支持jsonp请求? 单点登录系统主要是向其他系统提供用户身份验证服务,因此需要提供对外接口,而外部系统通过接口访问时,必然涉及跨域问题,因此需 ...
- SSH Secure Shell Client用public key认证登录
SSH Secure Shell Client用public key认证登录 依据secureCRT的经验,走了一段弯路,今天,在这里把操作流程分享一把,可能本篇看似过与简单,但如果想用这一工具的伙伴 ...
- linux用户双重认证登录,linux PAM 用户登录认证
PAM(Pluggable Authentication Modules )是由Sun提出的一种认证机制.它通过提供一些动态链接库和一套统一的API,将系统提供的服务 和该服务的认证方式分开,使得系统 ...
- Angularjs 通过asp.net web api认证登录
Angularjs 通过asp.net web api认证登录 Angularjs利用asp.net mvc提供的asp.net identity,membership实现居于数据库的用户名/密码的认 ...
最新文章
- Node.js开发WEB项目后端接口API,基于mysql5.7数据库(小试牛刀)
- python在教育领域可以干什么_学了Python一般可以用来干什么呢?
- 提高电子商务转化率的关键因素
- exchange无法收发邮件_SpringBoot2.x系列教程69--SpringBoot中整合邮件发送
- 多线程面试题之原子性、可见性、有序性
- 【LuoguP3038/[USACO11DEC]牧草种植Grass Planting】树链剖分+树状数组【树状数组的区间修改与区间查询】...
- 编解码标准H264 与 AVS 变换矩阵比较
- 多个 VUE 前端工程部署设置、nginx 代理配置
- 单片机中去耦电容的使用
- html email输入框,html5给文本框实现email域名自动完成效果
- Altium AD20中铺铜被导线分割的解决方法,如何正确覆铜整片区域
- java mysql 流水号_java实现数据库序号(流水号)
- cryptographic algorithms
- 年终总结系列1:基于IFRS9的预期损失准备金
- 你的计算机没有安装cad2006,win7安装autocad2006无法正常的2种解决方法
- (建议收藏) | Spring Boot集成JSON Web Token(JWT)【知识积累】
- RN系列:Android原生与RN如何交互通信
- 锁相环 matlab 噪声,锁相环(PLL)系统的噪声特性
- 【数据库系统原理】数据库课内实验
- pytorch 状态字典:state_dict
热门文章
- Win11 Build22499.1000预览版更新,可快速共享应用窗口到Microsoft Teams【附win11原版iso镜像地址】
- 【NOIP模拟】腐败
- CSS处理图片渲染时拉伸和挤压变形
- 【数据库原理及应用】——数据库系统结构和组成(学习笔记)
- 11、struct 结构
- 在处理时有错误发生: sogoupinyin
- linux热点连上不通,一个WiFi模块开出多个热点(不可连接)
- C语言:输入起始日期与截至日期,计算相距天数。
- 21 根火柴游戏(常胜将军)
- python dataframe创建指定大小_pandas DataFrame创建方法的方式