学习
实践
活动
工具
TVP
写文章

聊聊登录

日常小科技 二维登录这个操作,在我们日常生活中频频出现,在办公室的你是不是每天都要登陆电脑微信,这背后的原理又是什么呢? 一般的使用场景:在手机设备已经登录的情况下,需要在电脑PC端应用或者网页进行登录。此时用手机的应用扫描PC端生成的一个二维从而进行登录。 4 二维登录原理 登录可以分为三个阶段:等待扫描,已扫描待确认,已确认 1.等待扫描 ? 首先,PC端的应用携带设备信息向服务端发起二维请求。服务端生成唯一的二维,并与设备信息进行绑定。 在设置超时时长后,将二维返回给PC端的应用。 PC端应用在收到二维后进行展示,等待扫描。此时PC端应用会定时轮询二维的状态,超时则会显示二维失效。 2.已扫描待确认 ? 移动端扫描二维,获取二维的ID。将token,二维ID,设备信息发送给服务端。 服务端接收到请求后,将token和二维ID关联。并重新生成一个临时token返回给移动端。

28130

登录技术原理

2 登录功能的完整技术逻辑 1)网页端与服务器的配合逻辑: 接下来就是对于这个服务的详细实现。 首先用户打开网站的登录页面的时候,向浏览器的服务器发送获取登录二维的请求。 2)手机端与服务器的配合逻辑: 话说,浏览器拿到二维后,将二维展示到网页上,并给用户一个提示:请掏出您的手机,打开一扫进行登录。 3 淘宝的登录技术实现 本节我们以淘宝的登录为例,来实际研究分析一下淘宝的登录实现逻辑。 4 微信的登录技术实现 4.1 技术原理流程图 ? 微信的网页版访问地址是:https://wx.qq.com/,有兴趣也可以自行深入研究。 ,进行相应的操作: * 408 超时:如果手机没有或没有授权登录,服务器会阻塞约25s,然后返回状态 408 -> 前端继续轮询 ?

2.5K10
  • 广告
    关闭

    2022腾讯全球数字生态大会

    11月30-12月1日,邀您一起“数实创新,产业共进”!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    登录实现原理

    今天说一说现在比较流行的登录的实现原理。 需求介绍 首先,介绍下什么是登录。现在,大部分同学手机上都装有qq和淘宝,天猫等这一类的软件。而开发这些app的企业,都有他们相对应的网站。 为了让用户在使用他们的网站时,登录更加方便和安全。这些企业提供了, 使用手机,,就可以登录的服务。网页登录时的效果如下: ? ? 有很多小伙伴可能会感到很神奇,网页上只是显示了个二维,它怎么就知道是哪个手机扫到了二维,并且进行登录的呢?而且,登录完成以后,还能直接把用户信息显示给用户,真的是很神奇啊。 首先,大概说一下原理:用户打开网站的登录页面的时候,向浏览器的服务器发送获取登录二维的请求。 具体操作如下: 手机端+服务器 话说,浏览器拿到二维后,将二维展示到网页上,并给用户一个提示:请掏出您的手机,打开一扫进行登录

    52120

    登录是这样登录

    登录,其实相当于一种授权机制。 一、交互 二维登录是一个涉及三方的交互过程:web 浏览器、移动端,服务后台。 二、登录二位 想要登录,首先必须得有码。 二维是一种特殊的数据载体,作为登录二维,他首先必须具备一定的特性: 1、唯一性 首先有一个前提需要明确的是:每一个二维都必须是惟一的。 image.png 三、登录二维状态 登录二维是整个交互流程的核心,我们这里通过登录二维的状态来标识不同的操作步骤。 1、状态定义 a)待 二维生成完成后的状态。 此时二维处于待状态。 b)已 移动端完成后,二维需要更新为已状态,web 浏览器获取到此状态,需要作相应的状态展示“已待确认”。 c)已确认 移动端完成后,会有相应的提示“确认登录”操作,用户执行完“确认登录”后,二维更新为已确认状态。

    29131

    登录实现原理

    今天说一说现在比较流行的登录的实现原理。 需求介绍 首先,介绍下什么是登录。现在,大部分同学手机上都装有qq和淘宝,天猫等这一类的软件。而开发这些app的企业,都有他们相对应的网站。 为了让用户在使用他们的网站时,登录更加方便和安全。这些企业提供了, 使用手机,,就可以登录的服务。网页登录时的效果如下: ? ? 有很多小伙伴可能会感到很神奇,网页上只是显示了个二维,它怎么就知道是哪个手机扫到了二维,并且进行登录的呢?而且,登录完成以后,还能直接把用户信息显示给用户,真的是很神奇啊。 首先,大概说一下原理:用户打开网站的登录页面的时候,向浏览器的服务器发送获取登录二维的请求。 具体操作如下: 手机端+服务器 话说,浏览器拿到二维后,将二维展示到网页上,并给用户一个提示:请掏出您的手机,打开一扫进行登录

    5.2K61

    模仿淘宝web登录

    #### 首页登录: ? 点击右上角二维登录切换,触发js事件。 scan-login').hide(); $('.input-login').show(); _this.ST && clearInterval(_this.ST); } }); ``` 切换样式,进入登录页 ``` /** * 二维内容生成 */ @ResponseBody @RequestMapping("do_generate_qrcode") @UrlName("用户-[登录]二维内容生成") ``` /** * 二维扫描连接检查 */ @ResponseBody @RequestMapping("do_qrcode_check") @UrlName("用户-[登录]二维扫描连接检查") 一切确认好以后,将缓存中的uuid回应的信息绑定至缓存中。 随后前端定时每两秒会请求的js会发送请求,确认用户登录的状态。

    55020

    登录的实现方案

    如何实现登录 开发工具:MacOS、IDEA 技术栈:JDK1.8、SpringBoot、Thymeleaf、websocket、ZXing、jjwt 项目简介: 最近在想要打通各个子项目,于是搭建一个统一认证平台就成了任务的核心 这一篇文章对于单点登录不做描述,而是针对单点登录下的登录方式之一:。 第二步,,发送授权登录的请求,返回身份Token。 过程如下 通过小程序/APP扫描二维,取到二维中的UUID,弹出是否授权登录弹窗,如果同意授权,则携带UUID和Token(小程序和APP已经登录过,所有具有身份信息)去请求确认登录的接口,接口通过 UUID找到对应WebSocket连接的Session,然后传输Token给前端,如此便登录成功 实现效果 使用postman模拟授权登录 核心代码 ViewController @Controller

    98520

    微慕登录插件

    为了支持小程序用户可以登录WordPress,同时让授权的小程序用户可以直接在WrodPress里发表文章或评论,微慕团队开发了一个WrodPress插件-微慕登录,通过这个插件支持小程序用户和公众号关注用户登录 微慕登录插件主要功能如下: 支持小程序用户登录 目前支持微慕小程序的所有版本:开源版,增强版,专业版。 有关小程序登录部分的插件设置如下: 可以设置登录后的页面和对应的小程序版本。 在微慕小程序的“我的”页面,提供了登录的入口,下图所示: 开源版入口:https://www.watch-life.net/wp-login.php? type=wxapp 通过以上入口扫描网站WordPress登录页里的小程序登陆页面的二维,实现小程序用户登录到WordPress 支持公众号关注用户登录 微慕插件支持:公众号的关注用户登录 关注后,输入验证登录的界面如下: 3)认证的服务号:关注后(如果已关注,后)直接登录WordPress,录后用户会获取用户的微信昵称和头像。

    32420

    微信登录流程

    登录看起来神奇,主要是因为微信 APP 自家的会做一些普通二维软件不会做的额外的操作,那就是将当前已登录的微信和扫出来的 ID 提交到微信服务器,类似的应用还有支付、加公众号等功能,实现流程如下 如果一直没有扫描,在特定时长后(目前是27秒左右)会接到状态408(请求超时),表示应该继续下一次请求。 2.用户打开自己的手机微信并扫描这个二维,并提示用户是否确认登录。 如果接到状态201(服务器创建新资源成功),表示客户端扫描了该二维。 3.手机上的微信是登录状态,用户点击确认登录后,手机上的微信客户端将微信账号和这个扫描得到的 ID 一起提交到服务器。 4.服务器将这个 ID 和用户 的微信号绑定在一起,并通知网页版微信,这个 ID 对应的微信号为此用户 ,网页版微信加载用户 的微信信息,至此,登录全部流程完成。

    2.6K10

    登录背后的思考

    登录是一个比较常用的功能。 PC客户端、 服务server 、 安卓用户之间的信息交互和扫描登录的实现方式。 登录的流程 server端产生一个代表二维唯一标识的uid 及手机跳转登录网站的二维,返回给PC 端在前端页面显示,唯一uid 将存放在redis或mysql中代表着一次登录的信息,此时Android 过期:因为现在大部分 登录采用的为 轮询的方式,pc 客户端浏览器 每隔 1-2s 向 server 发送请求 查询登录二维的状态,如果很多用户都要登录,那对服务器的负责分发请求的将是一个很大的压力 扫描登录的前后端实现方式 1.轮询(现在大多数网站常用的方式)                 前端通过定时发送请求去请求 后端,返回数据根据返回的数据去修改 的状态。                 后端写一个controller,去service查询 传过来的 uid 的状态,根据不同状态,返回不同的 data,如果已确认 登录 将带有token 去跳转到主页面,登录成功。

    87810

    登录的原理和实现方法_支付的原理

    登录 1 概述 在日常 Web 端产品的使用中,一般都会支持登录,这种方式操作简单,相对传统的手机号登录等方式速度更快、安全性更高,还可以增加自家产品的粘合度。 2 登录原理 登录本质是解决将 APP 端的用户登录信息(通常是 Token)通过的形式安全稳定地同步给 Web 端。 :获取状态和获取用户登录信息。 先以微信公众平台为例,进入其登录页,就会发现密密麻麻的调用获取状态请求过程,很明显是采用了轮询方案。 4 安全防护 前面提到,登录的本质是通过手段安全稳定地同步用户信息。那么我们可以通过哪些手段提高同步过程中的安全性?

    10710

    登录为何不用websocket

    https://cloud.tencent.com/developer/article/1373154 很多网站二维登录采用轮询+长连接的方式,为何没有采用websocket?

    1.1K00

    钉钉登录-PHP版本

    今天写了一个第三方登录的功能,使用的是钉钉,实现的功能就是打开网页,使用的钉钉APP扫描二维,快捷登录网站,下面一起来看一下! 钉钉开放平台 首先,登录管理后台,点击右上角进行登录,这里的登录需要是管理员身份或者授权权限的子管理员身份,其他的身份不好使,如果没有管理员身份或子管理员身份(如我一样),那么就只能自己创建一个团队了, 继而可以登录这个管理后台了(第一次登录需要设置个密码,后续登录时需要输入的)。 创建应用 进入管理页面后,我们进入应用开发菜单,找到最下方的“移动接入应用”,进入子级菜单中的“登录”,在里面创建一个应用。如下图: ? 通过code调用接口getuserinfo_bycode获取授权登录用户信息。 ? 构造登录页面 构建登录页面有两种方式,我们以跳转方式为例,这种方式使用得较多,也非常方便。

    1.3K20

    Web 端微信登录

    日常使用网站经常会遇到微信登录的场景,这里主要介绍两种 web 端微信登录的方式及主要流程1. 微信开放平台 —— 网站应用微信登录接入微信开放平台——网站应用开发实现微信登录基于 OAuth2.0 协议标准构建的微信 OAuth2.0 授权登录系统。 出于安全考虑,网站应用的微信登录,需通过微信扫描二维来实现。图片2. 小程序登录2.1 前期准备已发布上线的小程序(获取小程序接口只能生成已发布的小程序的二维)2.2 登录流程图片2.2.1 生成小程序二维开放能力-获取小程序二维:https://developers.weixin.qq.com 2.2.2 小程序登录小程序登录(官方能力)图片2.2.3 获取授权状态可结合业务场景选择合适的方式获取用户授权状态:websocket定时轮询2.3 案例广东政务服务网微信登录登录案例图片

    20190

    PC微信登录要点

    关键点:生成临时二维 首先生成临时二维,场景id(scene_id)为随机生成的n位自符串,并将随机生成的自符串用key为session_id保存到session; 前端异步轮询。 等用户扫描二维后,去获取用户open_id,参数为code(场景id),未获取到则持续轮询,获取到则查询用户信息是否扫描,用户扫描则会到第三步。 用户扫描二维,进入公众号,公众号将用户的open_id和event_key为key,值为open_id(即上文获取的场景id存入memcache中,

    27210

    登录是如何实现的?

    作者:耗子吴 链接:https://www.jianshu.com/p/7f072ac61763 网页版微信刚推出时,无数人被它的登录方式惊艳了一下,不需要输入用户名密码,打开手机微信,便自动登录 微信界面 如果你用我查查、支付宝、新浪微博等软件二维,你会发现此二维解析出来是如下的网址: https://login.weixin.qq.com/l/obsbQ-Dzag== 接下来详细介绍一下登录具体的每个步骤 登录完整流程 ①:用户 A 访问微信网页版,微信服务器为这个会话生成一个全局唯一的 ID,上面的 URL 中 obsbQ-Dzag== 就是这个 ID,此时系统并不知道访问者是谁。 对应的微信号为用户 A,网页版微信加载用户 A 的微信信息,至此,登录全部流程完成 登录看起来神奇,主要是因为微信 APP 自家的会做一些普通二维软件不会做的额外的操作,那就是将当前已登录的微信和扫出来的 ID 提交到微信服务器,类似的应用还有支付、加公众号等功能。

    1.7K20

    PHP登录实现「建议收藏」

    ,权限,统计),而微服务的好处是显而易见的,可以做很多很酷的东西,写好接口,就可以给多个游戏项目调用,比如这次的登录。 我这边要请求登陆了,快给我一个唯一ID!!! id=uniqid’),轮询开始 Client:Server老哥,有人了么? Server: 没呢,老弟,再等等, ……… ……… 这时,某个靓仔掏出手机…. Client:Server老哥,有人了么? Server:我看看哈,有了有了,张三了,还没过期,热着呢,拿着吧 Client:张三成功登录,执行后续逻辑 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/

    11520

    登录是如何实现的?

    需求介绍 首先,介绍下什么是登录。现在,大部分同学手机上都装有qq和淘宝,天猫等这一类的软件。而开发这些app的企业,都有他们相对应的网站。为了让用户在使用他们的网站时,登录更加方便和安全。 这些企业提供了, 使用手机,,就可以登录的服务。网页登录时的效果如下: ? ? 有很多小伙伴可能会感到很神奇,网页上只是显示了个二维,它怎么就知道是哪个手机扫到了二维,并且进行登录的呢? 首先,大概说一下原理:用户打开网站的登录页面的时候,向浏览器的服务器发送获取登录二维的请求。 浏览器拿到二维和uuid后,会每隔一秒向浏览器发送一次,登录是否成功的请求。请求中携带有uuid作为当前页面的标识符。 具体操作如下: 手机端+服务器 话说,浏览器拿到二维后,将二维展示到网页上,并给用户一个提示:请掏出您的手机,打开一扫进行登录

    35620

    微信开放平台登录

    微信开放平台登录的功能只有已经认证过的微信公众号才可以使用,很多学习微信的同学可能没办法使用这个功能,但是别担心,以下网址中有很多账号可以使用: https://mp.weixin.qq.com/s class WechatController { @Autowired private WxMpService wxOpenService; /** * 微信开放平台授权登录 redirectUrl={}",redirectUrl); return "redirect:" + redirectUrl; } /** * 微信开放平台获取 2FqrUserInfo&response_type=code&scope=snsapi_login&state=http%3A%2F%2Fwww.imooc.com#wechat_redirect 微信后跳转到 openid=XXXXXJGsKKpEqGMEt7V7XXXXXX 按照上述步骤微信登录就实现了!!如果还有什么问题欢迎指教!!

    67920

    扫码关注腾讯云开发者

    领取腾讯云代金券