我测试了款手机,华为畅享10(ART-AL100X),同事的华为荣耀8也有同样现象。我通过小程序调用wx.uploadfile()上传图片到服务器。服务器采用nginx安装ssl证书跳转到IIS的方式,出现的故障现象是图片传不上去,小程序客户端卡住了。同样的小程序,用其他安卓系统调试(我试了小米/锤子手机)均可以在同样的视图中正常上传图片(实时拍照和选择相册均可)。我查询了nginx的日志,也查询了IIS日志,上面都查到了出故障时的访问的页面记录。然后通过小程序真机调试重复步骤,发现访问后台页面时,报的错误是Provisional headers are shown。后面根据网上的贴子,排查了服务器的SSL安全等级,发现是A,根据提示修改了nginx参数后提升到A+。重新测试通过小程序上传,这次发现直接使用摄像头拍照时能正常上传,但改用从相册上传时,再次出现Provisional headers are shown,同样的操作使用PC上的微信客户端执行小程序上传或者通过开发者工具执行上传均可以成功。
通过上述测试,我几乎可以断定问题就是出在华为鸿蒙OS的相册照片上传时有BUG,眼下该怎么办呢?
【IIS访问日志记录】
2022-07-05 02:35:46 192.168.10.195 POST /wyosmvc/wx/uploadFile - 80 - 192.168.10.191 Mozilla/5.0+(Linux;+Android+10;+ART-AL00x+Build/HUAWEIART-AL00x;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/86.0.4240.99+XWEB/4255+MMWEBSDK/20220604+Mobile+Safari/537.36+MMWEBID/3121+MicroMessenger/8.0.24.2180(0x2800183B)+WeChat/arm64+Weixin+NetType/WIFI+Language/zh_CN+ABI/arm64+MiniProgramEnv/android 500 0 0 3770 82592 249
【手机端发送记录:真机调试】
2022-07-05 02:35:46 192.168.10.195 POST /wyosmvc/wx/uploadFile - 80 - 192.168.10.191 Mozilla/5.0+(Linux;+Android+10;+ART-AL00x+Build/HUAWEIART-AL00x;+wv)+AppleWebKit/537.36+(KHTML,+like+Gecko)+Version/4.0+Chrome/86.0.4240.99+XWEB/4255+MMWEBSDK/20220604+Mobile+Safari/537.36+MMWEBID/3121+MicroMessenger/8.0.24.2180(0x2800183B)+WeChat/arm64+Weixin+NetType/WIFI+Language/zh_CN+ABI/arm64+MiniProgramEnv/android 500 0 0 3770 82592 249
提供复现片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。
或者不要真机调试
而是用手机扫码预览,然后复现一下,上传日志,给我们微信号和时间点 我->设置->帮助与反馈右上角有个上报日志的入口