今天遇到了一个天坑,我这么相信微信,结果被微信偷偷坑死了一回。
微信小程序解密encryptedData数据字符串,服务端php,官方下载的demo,如图:
用的官方demo,在开发工具里的模拟器中,以及ios手机上测试,都正常,结果偏偏在android手机上却报json解析错误的bug,硬是花费了大半天的是时间查找bug,原以为是兼容性问题,结果最后才发现是官方的wxBizDataCrypt.php中<?php 前面多了几个空格,导致android设备读取的json字符串多了几个隐形字符,也就是utf-8的BOM头,json解析错误。
解决办法,如图:
我用的是phpstorm,直接去除bom就好了,这还是官方给出的demo,既然出这样的bug,微信,我还能如何相信你啊?