首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Facebook如何管理用户会话?

Facebook如何管理用户会话?
EN

Stack Overflow用户
提问于 2017-05-28 20:06:28
回答 1查看 1.7K关注 0票数 4

我对Facebook如何在不同的网络应用程序(Facebook和Messenger)中管理用户会话感兴趣。当我进入Messenger web应用程序时,它知道我登录了Facebook,并允许我使用该应用程序。我想知道哪种技术能让我做到这一点(也许是Redis?)或者他们怎么能共享同一个会话?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-05-28 20:39:46

messenger.comfacebook.com发出ajax请求,并在用户登录或未登录时获取信息。

一旦在messenger.com中进行了身份验证,就会有一个独立于facebook.com会话的新会话。

所提出的请求可以从developer tools的Network选项卡中看到:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
POST https://www.facebook.com/login/async_sso/messenger_dot_com/?dpr=1&__a=1

这个端点允许messenger.com发出跨源请求(因为这个响应头):

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
access-control-allow-origin: https://www.messenger.com

x-auth-result中,关于Facebook帐户的信息是用base64发送的,并使用JSON.parse(atob(...))进行解析。

例如,我的是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
X-Auth-Result: eyJ1c2VyaWQiOi....sd1EifQ==

然后他们就会:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var n = m.getResponseHeader('X-Auth-Result');
if (n) {
    var o = JSON.parse(atob(n));
    c('Arbiter').inform('messengerdotcom_fb_session_info', o);
}

在我的例子中,o将是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
    "userid": "1000....756",
    "name": "Ionică Bizău",
    "secret": "P0....r",
    "persistent": true,
    "initial_request_id": "AfU...lwQ"
}

然后,他们终于可以在按钮中显示你的全名了。

当用户未登录时,Facebook将发回一个userid: "0"

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  "userid":"0",
  "initial_request_id":"A6...YOd"
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44234442

复制
相关文章
会话管理技术实战(用户登录案例)
[1].创建一个User类,封装用户名和密码。 [2].提供一个首页面,欢迎用户登录:IndexServlet,提供一个退出的链接。 [3].提供一个登录的Servlet:处理登录请求。 [4].提供一个退出的Servlet:处理退出首页面的功能。
别团等shy哥发育
2023/02/27
4150
会话管理技术实战(用户登录案例)
会话管理
Http协议是无状态协议,Web服务器没有短期记忆。在有些应用场景(例如:购物车)下,需要跨越多个请求识别同一个客户——客户跟踪,在Web应用中使用Cookie和Session可以做到这一点。
阿杜
2018/08/06
1.5K0
会话管理
session会话管理
session会话和cookie一起被称为会话跟踪技术,主要通过保存在服务器端的session数据和客户端浏览器的cookie数据共同完成用户访问服务器的足迹记录。
周小董
2019/03/25
1.5K0
如何利用Facebook Insights创建用户画像?
译者:李晓艳 审校:陈明艳 本文长度为2136字,预估阅读时间5分钟 摘要:创建用户画像是我们进行广告精准定向的一个重要步骤,本文向我们介绍了如何利用Facebook Insights创建用户画像。 众所周知,Facebook拥有巨大的用户数据。在过去18个月中,他们通过他们的平台“受众洞察(Audience Insights)”,分享了比以往任何时候更多的信息。 因此,除了时间、精力和Facebook帐户之外,我们也可以开始以非常低的成本开始构建用户画像了。 这篇文章将围绕我们如何开始利用“受众洞察”
iCDO互联网数据官
2018/03/05
2.5K0
如何利用Facebook Insights创建用户画像?
shiro——会话管理
Shiro提供SessionDAO用于会话的CRUD,即DAO(Data Access Object)模式实现。
用户10196776
2022/11/22
1K0
shiro——会话管理
如何获取Facebook用户的隐私好友列表
当拥有个人信息的组织机构发生数据失窃或遭受未授权访问行为时,就可能发生用户信息泄露事件。通常来说,这是种安全事件会导致一些敏感受保护的机密数据被广泛流传、分析或恶意利用。本文分享的漏洞writeup,只需知道Facebook用户的注册邮箱或者手机号码,就能间接获取该用户相关的隐私好友列表,进而推断出用户的一个大致的社交关系图谱。漏洞最终获得了Facebook官方$10,000美金的奖励。
FB客服
2019/05/09
3.9K0
如何获取Facebook用户的隐私好友列表
会话及管理技术
第五章 会话以及会话管理技术 1.会话概述: 什么是会话:从打开浏览器,到访问网页,到最终关闭浏览器,整个过程就是一次会话。 会话的特点:包含多个请求,一次完整的会话对应一个用户。 会话管理技术
别团等shy哥发育
2023/02/27
4510
会话及管理技术
如何管理 MQTT 用户登录?
上一篇文章测试了 MQTT 的连接,但是它是匿名的,甚至不填用户名以及密码都可以连接上,我们肯定不想看到这种局面。
嵌入式小屋
2022/04/27
1.7K0
如何管理 MQTT 用户登录?
Shiro实战(五) - 会话管理
Shiro提供了完整的企业级会话管理功能,不依赖于底层容器(如web容器Tomcat),不管JavaSE还是JavaEE环境都可以使用,提供了会话管理、会话事件监听、会话存储/持久化、容器无关的集群、失效/过期支持、对Web的透明支持、SSO单点登录的支持等特性 即直接使用Shiro的会话管理可以直接替换Web容器的会话管理
JavaEdge
2018/11/29
2.5K0
Shiro实战(五) - 会话管理
web会话管理的方式
http是无状态的,一次请求结束,连接断开,下次服务器再收到请求,它就不知道这个请求是哪个用户发过来的。当然它知道是哪个客户端地址发过来的,但是对于我们的应用来说,我们是靠用户来管理,而不是靠客户端。所以对我们的应用而言,它是需要有状态管理的,以便服务端能够准确的知道http请求是哪个用户发起的,从而判断他是否有权限继续这个请求。这个过程就是常说的会话管理。它也可以简单理解为一个用户从登录到退出应用的一段期间。本文总结了3种常见的实现web应用会话管理的方式:
用户9076598
2022/03/02
6310
如何使用 Tmuxp 来优雅的管理多个 Tmux 会话
事实上,tmuxp 也是一个构建于 tmux 之上的对象关系映射的 ORM 的 API 工具,就是利用 tmux 工具定义的窗格(pane)、窗口(windows)和会话(session),以创建关联视图的 Server, Session, Window, Pane 对象。我们在使用的时候,可以使用 YAML, JSON 以及 dict 字配置项来启动我们配置好的窗口和面板。使用时候需要注意的是,只支持 tmux>=1.8 的版本。
iMike
2021/05/18
4.3K0
如何使用 Tmuxp 来优雅的管理多个 Tmux 会话
远程多用户多会话配置
不是刚需不要开启!!!如何开启往下看。(出了安全问题本人不负责,下面的文档不论哪里的都是介绍如何安装,安全风险需要自担)
Windows技术交流
2021/06/15
4.8K0
使用 GoExpect 进行 SSH 会话管理
goexpect 是一个用于自动化交互式应用程序的库,如 ssh 或 telnet 对话,或其他命令行工具。这在自动化中非常有用
运维开发王义杰
2023/08/10
7810
使用 GoExpect 进行 SSH 会话管理
Servlet总结三(HttpSession会话管理)
文章目录 1. Servlet总结三(HttpSession会话管理) 1.1. 简介 1.2. 常用方法 1.3. 使用 1.4. 简单的例子 Servlet总结三(HttpSession会话管理) 简介 HttpSession是提供一种方式,跨多个页面请求或对 Web 站点的多次访问标识用户并存储有关该用户的信息。 简单的来说就是能够实现全局的共享数据,可以跨多个页面请求,当然在Servlet中可以在同一个项目中的不同的Servlet中共享数据 常用方法 void setAttribute
爱撒谎的男孩
2019/12/31
7790
Nginx之会话管理解读
Session对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的Web页之间跳转时,存储在Session对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。当用户请求来自应用程序的 Web页时,如果该用户还没有会话,则Web服务器将自动创建一个 Session对象。
一个风轻云淡
2023/10/15
2760
【MySql】用户管理——用户管理|权限管理
如果我们只能使用root用户,这样存在安全隐患。这时,就需要使用MySQL的用户管理。 比如张三只能操作mytest这个数据库,李四只能操作msg这个数据库,而root可以操作所有的库,如果给他们root账户,风险太大了,数据库都能操作,所以我们需要对用户进行管理。
平凡的人1
2023/10/15
2840
【MySql】用户管理——用户管理|权限管理
NxShell会话管理支持导入导出
该功能常用于换电脑的时候,备份自己的nxshell 会话配置文件或者根据以前的会话文件恢复会话配置。具体操作如下:
用户4821680
2021/06/17
8520
NxShell会话管理支持导入导出
Shiro 集成 Spring 之会话管理
Shiro 提供了完整的会话管理功能,可以在不依赖底层容器,不仅可以在 WEB 环境下使用 Session,还可以在 JavaSE 环境下使用,且提供了会话管理,会话事件监听,会话持久化,过期支持。
一份执着✘
2018/10/08
8930
点击加载更多

相似问题

如何使用Facebook token在Android中管理用户会话?

16

PHP Facebook会话管理

10

如何管理用户facebook的“管理页面”?

20

Blazor如何管理用户会话?

120

Facebook sdk/js:Cookie/会话管理

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文