问题描述:
本地调试 调用上传 官方说明: wx.uploadFile(OBJECT) 将本地资源上传到开发者服务器。如页面通过 wx.chooseImage 等接口获取到一个本地资源的临时文件路径后,可通过此接口将本地资源上传到指定服务器。客户端发起一个 HTTPS POST 请求,其中 content-type 为 multipart/form-data 。 看情况应该是支持https 但是在实际开发过程中 https 并不能使用 http 倒是可以 报错为:
然后问群里:都说很明显啊 证书错误,会翻译的人都知道吧? 但是事实上我们的接口也是使用 https 本地自己的证书也是没有问题的。故作为一个运维人员的我 苦逼的搜索资料 还有就是进行一系列测试 测试是从直接写demo 调线上接口开始调试,尽管使用线上接口依然这个错误 猜测是不是这个东西压根就没有经过什么配置 相当于被写死了的感觉~~ 后来 搜索文章 某大牛说道:
原因:上传和下载,本地开发中的调试是有问题的,需要预览才能测试
案例二: wx.uploadFile 这个方法同时 上传图片 和文字类,默认不会对返回的数据json处理。。使用 res.data=JSON.parse(res.data); 即可解决
案例三: 前不少人在用wx.uploadFile组件时发现了各种问题,什么编码问题、网站证书问题等等,但有一个问题是没有解决的, 就是iOS的手机可以上传文件,而安卓的手机不行。我也尝试了各种办法,比如设置请求时的header 参数,检查网站服务器权限等等, 但还是无功而返。然后……解决的办法是…………………………
升级安卓手机端的微信,必须要升级到 6.5.2 版本以上!!!! 这样就和iOS版的微信版本一样了,然后就可以正确上传文件了!!!!!!
一亿只草泥马奔腾而过…………………………
所以建议大家可以用 wx.getSystemInfo 获取微信版本号判断一下是否6.5.2以上,否则提示用户升级微信。
备注:建议升级到最新版本安卓及ios版本,最新版本查询地址: 备注:测试版本无法在上述地址内看到 |