首页 > 编程知识 正文

扫描二维码是什么技术,扫码支付的原理

时间:2023-05-06 17:48:05 阅读:42169 作者:1428

最近,人们要求用手机扫描代码以实现用户注册。 这是近年来流行的登录方式。 它确实实现了用户体验至上,操作简单、方便实用。 得到需求后,和后端的哥哥商量后,决定了具体的实施方案。 其实重要的还是要了解他实现的原理。

需求:用户至上的体验效果,手机扫码同时登录状态很多企业在开发自己的APP的同时也推出了网络版,为的是让登录操作更加方便、更加安全。 企业使用手机扫描,实现用户注册。 奇怪的是。 为什么只需在网页上查看一个二维码就可以进行用户登录? 这个二维码是固定的吗? 是如何分配给用户的id? 我如何才能将手机登录信息同步到网页上?

例如,如何清除淘宝、京东等许可证即可成功登录,实现用户信息同步?

下面介绍一下手机扫描登录的实现原理。 使用的服务是两台,手机端服务和网页端服务不是同一项服务。

网站端和服务器用户打开网站登录页==浏览器向服务器发送请求。 此请求用于获取登录的二维码==服务器收到请求后,将随机生成uuid,并将该uuid作为密钥值存储在redis中,并设置过期日期。 过期后,使用者介面会显示「需要重新取得二维码」。 此外,将该key值与我们的验证字符串联系起来,并随机生成它们的二维码()互联网上有很多二维码生成器的接口和源代码,可以直接调用)=二维码和用户的uuid一起在浏览器中

前端开发获取该二维码和uuid==,每隔一秒向浏览器发送登录是否成功的请求,请求中携带有uuid作为当前页面的标识符。

这里有问题。 服务器上只有一个随机的uuid存储在redis中,该如何显示用户id的信息呢? 实际上,这个用户的id信息从手机服务器存在于redis中。 这就是为什么需要两台服务器。

手机和服务器就像刚才我们说的,浏览得到二维码,展示在页面上。 此时前端可以给出提示信息。 请用手机扫描注册。 用户拿到手机扫描二维码后,就可以获得认证信息和uuid。 (在网上也可以找到很多扫描二维码获取字符串的这个案例。 )手机端已经进行了登录操作,后端也记录了用户信息,因此在访问手机端服务器时,参数中携带了用户的token。 手机端的服务器可以解析用户的uesrid。 (注意:这里从token而不是手机端取值直接传递userid是为了安全。 直接传递userid可能会被拦截和修改。 由于token是加密的,因此被修改的风险相当小。 手机端将解析后的数据与用户token一起作为参数向服务器发送认证登录请求(这里的服务器是手机服务器,手机端的服务器与web服务器不是同一服务器)。 服务器接收到请求后,首先比较参数中的认证信息,并确定是否是用户登录请求接口。 是的,我会给手机方面回复确认信息。

手机端收到回复后,向用户显示登录确认框(防止用户误操作,同时使登录更加人性化)。 确认用户用手机进行了登录操作后,手机将再次发送请求。 服务器获得uuId和userId后,将用户的userId作为value值存储在redis中,并将uuId与密钥的键值配对。

成功登录且浏览器再次提交请求后,浏览器端服务器将获取用户Id,并调用登录方法以生成浏览器端token。 然后,当浏览器再次发送请求时,将用户信息返回到浏览器,登录成功。 在这里保存用户id而不是直接保存用户信息,是因为手机端的用户信息不一定与浏览器端的用户信息完全一致。

如果你是前端可爱的人,你只需要发送请求并收到信息就可以了。 重要的逻辑部分和分析工作还是由后端纤细的蛋饼主导,希望对大家有帮助。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。