一个只能在线上环境修复的bug 小程序码扫描不正确的问题

hello 你好 我是大粽子。

工作中的填坑就像知识一样,得一步步来,就像我下面遇到的这个问题一样。

这个是我一部分的记录日志

结果 扫码环境 生成环境
没问题 开发工具模拟 开发工具生成
有问题 本地和开发工具模拟 本地和开发工具模拟生成
有问题 线上 线上

找问题

从上线的小表格可以看出本地模拟环境没有问题,线上有问题,本地和线上互相生成和扫码会存在问题,那么问题相对就好找了。

顺着业务逻辑一步步确认下。

前端在商品详情中获取到商品详情之后,传递参数给后台,后台生成小程序码的Base64数据再给前端,剩下的将html绘制成图片的功能就是前端自主操作的了。

商品详情--》获取小程序码--》绘制canvas后保存图片。

那么先从小程序生成二维码入手

嗯参数没问题

拿着数据去解析下看看后台给生成的对不对?(狗头),用工具还原Base64图片。

截图保存下,去小程序验证下,解析出来的数据和当时传入的参数一致就放过后端开发一码,

要么 “哼”(前端小姐姐直问后端开发时的表情自行脑补)(狗头)

竟然和参数一样,看来不能找后台撕逼了。(无聊,没有气氛)哈哈哈。

那么问题到底在哪里

细心的童鞋应想到,如果后台给你的小程序码数据没问题的情况下,只要这个数据正确使用了那么问题肯定不存在哈!

那么就一步步证明下吧!没办法,线上环境打log也看不到,测试问题就直接toast或者直接输出数据搞吧,谁让开发工具模拟真实环境还是有问题呢?

直接展示,暴力吧!

还有个地方我排错处理了,就是转图片的时候每次生成一个临时文件,名称竟然一样,为了排除插件功能中本身的问题我加上了时间戳,我可不想来一步一个标记,然后审核提交线上后测试,都是时间啊,把有可能出问题的地方给他全堵死了

感受下测试这个问题必须线上环境的焦躁。最后一次审核竟然是半夜1:17 鹅厂不是强制6点下班么?

结语

可以放心的扫码到指定商品了。想不想知道这个商品是线上哪个?

其实上面遇到的问题就纯属是坑,正常的使用过程中环境复杂,但我们都有一颗解决bug的心不是么?

在上面的修改中我其实只是做了数据参数的确认和生成后的代码优化和线上的确认而已。但是到底是优化小程序解析数据生效了还是添加临时文件时间戳生效的还真没确认,不过暂时对我来说不重要,后面有时间接着这个问题继续玩。细心的童鞋也可以帮我验证下哈!

不怕脱发的大粽子,没有一扇门能一直挡住一个执着的人。加油。

posted @ 2021-07-03 11:30  西北大粽子  阅读(42)  评论(0编辑  收藏  举报