背景介绍:
最近测试发现一个bug,不同设备在微信小程序中上传到后端的图片不一样,有些能够识别,有些不能够识别,这里就有两个方向:要么识别算法不行,要么前端传过来的图片不行。算法是调用别家的,该不了,那就只能反馈给前端,不同设备从微信上传过来的图片不同了。这里就需要抓包并分析。
操作1:tcpdump抓包:
// 1. tcpdump抓包
tcpdump -i any host {{host_ip}} and tcp port {{port_ip}} -n -v -s 0 -w /tmp/20220301.pcap
// 2. 导入到跳板机中
scp {{virtual}}:/tmp/20220301.pcap /tmp
// 3. 将抓包信息发送给windows系统
操作2:wireshark获取二进制文件
获取二进制文件
操作3:将二进制文件转为base64
使用在线工具:Hex to base64 converter (tomeko.net)
操作4:base64转图片
在线工具:BASE64转图片 - 站长工具 - 极速数据 (jisuapi.com)
操作5:查看图片信息
操作工具:图片信息查看,图片格式、大小、像素、色彩查看器 (sojson.com)
结果如下:
输入图片 | 传输到云端的图片 | 结果 | |
---|---|---|---|
iphone | 4032 x 3024 | 1706*1280 | 人脸识别成功,偏转角适当 |
小米 | 4032 x 3024 | 854*640 | 人脸识别不成功,偏转角过大 |
oppo | 4032 x 3024 | 854*640 | 人脸识别不成功,偏转角过大 |
sanxing | 4032 x 3024 | 854*640 | 人脸识别成功,偏转角适当 |