我也是同样的问题。蹲一下看看官方怎么解释。
小程序通过微信授权手机号的方式被灌水注册用户,消费手机号快速验证组件次数如题,通过我们的服务端日志以及数据库中相关记录,发现有通过小程序微信授权手机号的方式批量灌水注册用户,存在恶意消费 手机号快速验证组件 次数的嫌疑; 我们小程序的授权流程: 进入小程序时,通过 wx.login 拿到 code,并请求获取 openId 的接口,这时服务端获取到 session_key 缓存但是不会返回给前端;用户点击微信授权按钮拉起手机号授权面板,允许授权,回调方法中拿到 encryptedData、iv、code(动态令牌) 并发送给服务端;服务端拿到 encryptedData、iv、code(动态令牌) 这三个参数后,如果 code(动态令牌) 有值会优先使用 code(动态令牌) 请求微信服务端获取手机号,否则使用 encryptedData、iv 和 session_key 解密获取到手机号;------------------- 通过分析服务端日志,批量灌水注册用户的就是通过以上流程进行注册的,encryptedData、iv、code(动态令牌) 这三个参数齐全,而且数据库中有对应的 openId、unionId、session_key 等信息,我们手动进行了解密: 通过 code(动态令牌) 去请求微信服务端获取手机号,获取失败,应该是 code(动态令牌) 只能用一次的缘故;通过 encryptedData、iv、session_key 解密手机号是能成功解出手机号的;所以小程序前端灌水注册时这三个参数 encryptedData、iv、code(动态令牌) 不是伪造的,是有效可用的;session_key 是在服务端存储的,没有返回给前端,所以不存在 session_key 泄露的问题; ------------------- 另外,判断注册用户为批量灌水注册的原因: 日志显示这批用户接口请求的 user-agent 全部是:Mozilla/5.0 (iPad; CPU OS 8_3 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12F5027d Safari/600.1.4,这个信息显示访问设备是 iPad,但是接口参数中上报的设备类型确实 iPhone;我们的业务场景中有其他的试用固定时间戳作为注册来源,但是这批注册用户的注册来源都是动态的时间戳;我们的小程序页面有埋点事件,在埋点后台查不到这批用户的任何事件和页面浏览记录,同一时段有其他用户事件上报正常;注册时间段集中在同一个时间段 8:00 ~ 9:00;查询 we 分析平台 wx.login 接口监控数据,当天的 8:00 ~ 9:00 事件段,监控数据并无异常,没有出现爆发式增长的情况;------------------- 灌水注册小程序基础库:2.25.4 如果需要更多信息,我这边可以私信提供;
2023-09-26虽然你的帖子已经是老帖了,wx:if和wx:else的相到间的内容确实会闪一下,强迫症的我也是无法忍受,其它你这个问题有个更好的办法,就是使用CallBack回调,问题就完美解决。wx:if里的条件设置来空,使用回调来给赋值。启发是再app.js中有这句话:// 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回// 所以此处加入 callback 以防止这种情况,所以我也想到是否能用回调来解决这个问题,就自己写了一个回调函数,效果很完美。
小程序怎么解决页面wx:if页面闪烁问题?一个页面根据后台返回的字段wx:if显示不同界面,进入页面会闪烁一下隐藏的元素怎么解决?
2020-07-10