一、网页快照页模式介绍
快照页将会默认对用户屏蔽网页授权弹窗,用户在快照页中仅可进行滑动浏览操作,其他交互将被限制,并提示用户“该网页需获取个人信息才可使用完整服务,当前仅可浏览部分内容”。用户如需要使用完整网页服务,可轻触右下角 “使用完整服务” 按钮触发授权弹窗,用户确认后进入原网页。
二、生产环境出现情况:
1、用户未关注公众号
2、通过分享出去的页面或者链接,打开并进行snsapi_userinfo登录
三、开发复现:
1.必须真机测试
2.调用授权的方式必须是,进入这个页面就进行登陆
3.打开方式:必须是分享出去的页面或者链接,不能是从公众号菜单页面进入
4.必须取消关注公众号
5.forceSnapShot(只需要用到forcePopup,不需要forceSnapShot)
四、解决方案:尽量避免触发快照,对于特殊情况触发了快照给予引导提示
1、【不快照触发】针对链接带有parent_id的,在授权登录跳转前,弹窗提示,或者跳转到指定的登录页,这里旧项目快速兼容选择弹窗
(带parent_id一般是分享出去的,会触发快照,不带parent_id的是从公众号点击的,一般不会触发)
2、【触发快照拦截提示】用户登陆授权以后,请求后端,后端通过 code 换取网页授权access_token的时候,如果是快照模式则会返回is_snapshotuse字段
- 可以通过is_snapshotuser=1或者是昵称是“微信用户”,用户信息不入库,并返回is_snapshotuser=1给前端
- 前端识别到is_snapshotuser=1,弹窗引导用户点击右下角使用完整功能唤起授权
参考文献:
https://blog.csdn.net/qq_59747594/article/details/127197171
标签:网页,公众,微信,用户,快照,授权,弹窗 From: https://www.cnblogs.com/lanse1993/p/16925674.html