小程序面试
1什么是openid
用户在当前小程序中唯一,相当与数据库中的主键,但是同一用户在不同小程序中的openid不同。
2能讲一下小程序的登入流程码?
1 小程序调用wx.login接口获取code,并传送给后端
2 后端拿到code,结合code,appid,appsecret,获取session_key与openid
3 拿到session_key与openid后,自定义登入态,将自定义登入态返回给小程序,我们可以通过自定义状态找到openid和session_key
4 下次请求我们的后台业务的时候,可以通过自定义登入态,找到我们后台的session_key与openid
3 当授权的时候,后端需要用session_key解密,请问session_key有时效性吗?如果有时效性,你怎么判断他过期,怎么更新session_key?
1 有失效性
2 小程序是是通过wx.checksession接口判断
3 如果过期,这需要从新登入,获取新的session_key
4小程序支付和普通的微信的支付有什么区别吗?
普通的微信支付,只要我们完成统一下单接口,用户就可以直接支付,但是小程序的支付再进行统一下单以后,还必须要对统一下单接口返回的数据进行再次签名,然后将再次签名的数据,返回到小程序,才能吊起我们的支付,用户才能正常支付。
5你对access_token了解吗?他有什么特性吗?
有了解,
1他主要是用与微信接口的密钥,这个access_token是很多接口的密钥,请求一些接口的时候,必须带上这个access_token,
2但是这个access_token也是通过接口请求得到,这个access_token是有失效性的,他是有有效期的,有效期的的时长7200秒,我们获取这个数据的时候,应该全局只有一个方法,这样就可以防止access_token覆盖,导致业务无妨正常进行。