今天这篇文章算是一个笔记吧!
开始说问题之前,一定要提醒看见这篇文章的人,一定要看手册,用心的看。
文档:https://developers.weixin.qq.com/miniprogram/dev/framework/ability/network.html
问题现象:
我使用七牛云的图片进行绘制(第三方的网络图片也可以),在测试环境和未发布开调试的生产环境使用都没有问题,但是生产环境不开调试图片就是不显示,绘制的文字都是正常的。
解决之路:
手册中明确说明了
每个微信小程序需要事先设置通讯域名,小程序只可以跟指定的域名与进行网络通信。包括普通 HTTPS 请求(wx.request)、上传文件(wx.uploadFile)、下载文件(wx.downloadFile) 和 WebSocket 通信(wx.connectSocket)。
而绘制图片恰恰需要使用wx.downloadFile。由于网络图片不在指定的域名下,所以微信无法获取到指定图片。
解决办法:
1:将第三方的域名添加到downloadFile的域名配置中(需要https)。
2:将网络图片地址传递到后台,由后台去中转,请求第三方然后返回。
这样就可以解决问题了。这个问题实在是太尴尬了。文档一定要多看啊。