微信小程序常见面试题,微信小程序面试题及答案

作者:灰灰来源:JS每日一题

作者:格雷来源:JS日报提问。

面试官:说说微信小程序的登录流程?

00-1010传统web开发实现登录功能,一般方法是输入账号密码,或者输入手机号和短信验证码进行登录。

验证用户信息后,服务器向客户端发送一个代表登录状态的令牌,供后续交互使用。每当令牌过期时,用户需要再次登录。

在微信小程序中,通过微信官方提供的登录能力,可以轻松获取微信提供的用户ID,快速建立小程序中的用户系统,从而实现登录功能。

小程序用户系统的实现主要涉及openid和代码的概念:

调用wx.login()方法会生成代码,并将代码作为参数传递给微信服务器的指定界面,从而获取用户的openid。对于每个小程序,微信会将用户的微信ID映射到一个小程序openid,这将是该用户在该小程序中的唯一标识符。

一、背景

微信小程序登录的具体实现逻辑如下图所示:

面试官:说说微信小程序的登录流程?

通过wx.login()获取用户的代码,判断用户是否被授权读取用户信息,调用wx.getUserInfo读取用户数据。由于后台小程序授权的域名无法对微信的域名进行授权,需要在自己的后端调用微信服务器获取用户信息,通过wx.request()请求服务端服务器。后端将appid、appsecret和代码一起发送到微信服务器。appid和appsecret都是微信提供的,微信服务器返回的会话密钥和本次登录都可以在管理员后台找到。session_key是对数据库中的用户数据进行加密和签名的密钥。如果没有找到记录,则意味着用户没有注册。如果有记录,继续。为了其自身的应用安全,session_key不应该在网络上传输,然后生成并返回给applet。小程序将会话保存在存储器中。当发出下一个请求时,它应该首先从存储中读取它,然后将其带到服务器来比较会话对应的记录,然后验证具有更详细有效期的功能图,如下所示:

面试官:说说微信小程序的登录流程?

在10点到1010点的实际业务中,我们还需要登录状态是否已经过期。通常的方法是将有效性数据保存在登录状态(临时令牌)中,当服务器验证登录状态时,应该与约定的时间(如服务器的本地系统时间或时间服务器上的标准时间)进行比较。

这种方法需要将本地存储的登录状态发送给小程序的服务器,然后当服务器判断登录状态无效时,向小程序返回需要重新执行登录过程的消息。

另一种方法是调用wx.checkSession检查微信的登录状态是否已过期:

如果过期,将启动完整的登录过程。

如果没有过期,请继续使用本地保存的自定义登录状态。

这种方法的优点是不需要小程序服务器参与验证,而是在小程序终端上调用AP,过程如下:

面试官:说说微信小程序的登录流程?

参考文献

https://segmentfault.com/a/1190000016750340

https://juejin.cn/post/6955754095860776973

https://www.cnblogs.com/zwh0910/p/13977278.html

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/55277.html

(0)

相关推荐

  • 朋友不听我的劝告非要买新能源车

    朋友阿江刚入职隔壁镇乡村小学老师,他妻子刚生下一子在家带娃,上周和我说他想买辆3到5万块左右的二手轿车,问我有没有认识在县城做二手车交易的朋友。我直接把一个做二手车交易朋友的微信推...

    科技 2021年11月20日
  • 尚未上市的半导体大鳄

    安谱隆半导体,是一家总部位于荷兰的全球化芯片公司,持股平台为合肥瑞成产业投资合伙企业,落户于合肥高新区,股东包含:湖北联投,中植系,中信,建投华科等等,股权结构错综复杂。

    2021年11月1日
  • 阿里大跌11%,哔哩哔哩大跌17%,中概股还有希望么?

    昨天美股中概股经历了一次动荡,阿里大跌11%,哔哩哔哩大跌17%,导致今天开盘后中概股的走势依然不好,中概股在前一段时间经过6天上涨之后终于迎来了回调,而这次回调的力度看起来比较大,有再次触摸最低点的意思。

    科技 2021年11月19日
  • 21渤海银行质押案案件追踪:华业石化不是国企,而中石化否认是其子公司。

    21世纪经济报道记者 李玉敏 北京报道 这个周末,企业在渤海银行南京分行28亿存单被质押融资的消息刷屏了。

    生活 2021年10月25日
  • 小米手机!

    工地干活,由于大意,红米k30i手机从七楼楼顶掉落,本以为报废无疑,心疼两个小时,结果捡起来后却出乎意料,除了后盖玻璃破碎,机身稍许弯曲外,其他一切完好,连钢化膜都是完好,不得不说,是我目前用过的手机中,质量最好的一部了,小米没有辜负米粉,如此亲民的价格,能有质量这么好的手机,只能说良心企业,为小米狠狠的点赞,下部手机小米依然是首选,本人声明,愿为此内容真实性负法律责任,绝无吹捧之意,也没有做广告的意思,只是为小米的质量点赞

    科技 2021年10月31日
  • 怎样的晚餐,晚餐怎样吃才科学健康

    一日三餐是我国传统的饮食习惯,由于生活节奏紧张,晚餐有时成了我们和家人团聚、友人沟通的时段。

    生活 2021年12月11日