http://www.wxapp-union.com/forum.php?mod=viewthread&tid=2988(copy)

这个问题,研究者甚少,以至于相关问题直到今天,仍然属于未知的领域,所以我准备集合所有的知识和资源,来说明这个问题;

本帖将不断聚合跟downloadFile有关的知识和内容,假如你有自己的经验,也欢迎分享出来,可以单独发帖也可以回复在这里,以便方便其他同学学习和参考!

官方文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/api/network-file.html#wxdownloadfileobject

假如讨论中有误,欢迎指正,以便修正!

提示一:
downloadFile,需要在小程序公众后台配置相应的downloadFile域名,否则会无法正常使用;

相关讨论一:
Q:我们在微信开发工具,选择图片后,尝试上传或下载图片 都没有任何反应,请问是什么原因?
A:最新版本的开发工具已经支持 uploadFile 和 downloadFile 的调试。

相关讨论二:问题:style的height:auto;不起作用怎么办?图片不能自动缩放

style的height:auto;不起作用怎么办?图片不能自动缩放

答:

我使用的是 getImageInfo 接口获取图片宽高然后算出高度渲染的,这里要注意图片如果过多需要使用请求队列,因为这个接口请求网络图片会调用 downloadFile,而小程序有 5 个并发的限制,另外要做好超时后显示错误图片的处理。

相关讨论三:求教怎么实现下载服务器上的图片到手机 
现在我用的是wx.downloadFile下载文件,然后用wx.saveFile保存到本地,但是发朋友圈的时候并不能识别出保存的图片文件,求教大神应该怎么实现,也就是发朋友圈的时候能够识别出通过小程序下载的图片文件,谢谢啦。
答:夏晓锋

应该用wx.previewImage,然后长按图片在保存到手机里。

相关讨论四:wx:file//地址不合法,下载到本地的音频文件无法播放在微信小程序中,可以通过 audio 组件播放网络音频资源。现在想将音频先下载到本地,之后不用每次都下载,提高用户体验。使用 wx.downloadFile 接口将音频文件下载后,无法通过 audio 组件或者 wx.playVoice 播放,提示地址URL不合法,请问有没有相应解决方案?如果“wx:file//”地址不合法,那么是不是所有用户下载的音频视频文件都会无法播放啊。请问是我方法错误,还是有更好的解决方案我们不知道

可以试试先download,再savefile,再调用playVoice可以

相关讨论五:
wx.downloadFile 或 wx.saveFile 能指定目标文件夹吗?

小程序 wx.downloadFile 或 wx.saveFile 能指定文件夹吗?‘
比如下载的图片,可以在手机图库中看到吗?

download和save均不可指定路径,因为它们会被保存到小程序的本地存储中

download下来的临时文件没有容量限制,退出后会被清除;save的永久存储限制为100M

另外,目前没有方法能保存到其他目录

 
相关讨论六:

ios设备上 视频无法播放(安卓可以播放,视频是先下载后存储)

先调用wx.downloadFile下载视频文件;
然后调用wx.saveFile存储文件到本地;
返回值都OK;然后设置video组件的src;
测试时候在 微信调试工具和安卓机器上正常,ios设备上返回值也都是ok,但是视频却是黑屏无法播放

问题解决了!微信小程序的视频播放 src 是可以 用外部动态链接的,不需要savefile

相关讨论七:

wx.downloadFile保存的文件在哪里 
<ignore_js_op> 
<ignore_js_op>

不需要关心下载到哪里(每个环境都不一样),只需要知道根据这个地址可以读取到文件即可

wx.downloadFile问题的更多相关文章

  1. 微信小程序把玩(三十一)wx.uploadFile(object), wx.downloadFile(object) API

    原文:微信小程序把玩(三十一)wx.uploadFile(object), wx.downloadFile(object) API 反正我是没有测通这两个API!!!!不知道用的方式不对还是其他的!! ...

  2. [技术博客]使用wx.downloadfile将图片下载到本地临时存储

    目录 目标 代码展示 重点讲解 目标 在上一篇技术博客中,我们生成的海报中包含图片,这些图片是存储到服务器上的,而canvas的drawimage函数只能读取本地文件,因此我们在drawCanvas之 ...

  3. wx.getImageInfo和wx.downloadFile下载用户头像报错(小程序canvas以及小程序图片下载部分)

    我先上图 之前我们后台配置的 downloadFile 合法域名是 https://wx.qlogo.cn,   用了好久都没出问题,  前段时间,  用户反馈  分享海报,  用户头像出不来!!!! ...

  4. 【微信小程序】调用wx.request接口需要注意的问题

    写在前面 之前写了一篇<微信小程序实现各种特效实例>,上次的小程序的项目我负责大部分前端后台接口的对接,然后学长帮我改了一些问题.总的来说,收获了不少吧! 现在项目已经完成,还是要陆陆续续 ...

  5. 【小程序】调用wx.request接口时需要注意的问题

    写在前面 之前写了一篇<微信小程序实现各种特效实例>,上次的小程序的项目我负责大部分前端后台接口的对接,然后学长帮我改了一些问题.总的来说,收获了不少吧! 现在项目已经完成,还是要陆陆续续 ...

  6. 微信小程序wx.request接口

    微信小程序wx.request接口 wx.request是小程序客户端与服务器端交互的接口 HTTPS 请求 一个微信小程序,只能同时(同时不能大于5个)有5个网络请求 wx.request(OBJE ...

  7. wx小程序用canvas生成图片流程与注意事项

    1.需要画入canvas的 图片都需要先缓存到本地 let ps = [] ps.push(that.loadImageFun(this.statusInfo.avatar_url, "he ...

  8. 调用wx.request接口时需要注意的几个问题

    写在前面 之前写了一篇<微信小程序实现各种特效实例>,上次的小程序的项目我负责大部分前端后台接口的对接,然后学长帮我改了一些问题.总的来说,收获了不少吧! 现在项目已经完成,还是要陆陆续续 ...

  9. 小程序安卓端播放不了音频解决方法wx.createInnerAudioContext()

    在小程序播放音频时,使用组件wx.createInnerAudioContext(),安卓端无法播放音频. 我的情况:播放服务器上传来的音频,格式为mp3.首先查看你的格式是否符合文档要求 在安卓端进 ...

随机推荐

  1. 从头到尾使用Geth的说明-1-安装

    Geth 1.安装https://github.com/ethereum/go-ethereum/wiki/Installation-Instructions-for-Mac 1.首先先安装Homeb ...

  2. ethereum/EIPs-712 Ethereum typed structured data hashing and signing

    https://github.com/ethereum/EIPs/blob/master/EIPS/eip-712.md eip title author discussions-to status ...

  3. Mysql几种索引方式的区别及适用情况 (转)

    文章摘自http://blog.sina.com.cn/s/blog_4aca42510102v5l2.html Mysql目前主要有以下几种索引方式:FULLTEXT,HASH,BTREE,RTRE ...

  4. Shell逻辑语句

    case esac 语句 参考 :https://blog.csdn.net/wu20093346/article/details/47210809 case ... esac 与其他语言中的 swi ...

  5. 用JavaDoc生成项目文档

    项目到了尾声,大家都开始头疼——又要写文档了……是的,我们大多数人都不是从正规的Programer训练出来的.当初学习编程序的时候,就从来没有想过要给自己写的那几个程序编写一份完整的文档,所有的注释都 ...

  6. NOIP2018 模拟赛(二十二)雅礼NOI

    Preface 这次的题目都是NOI+的题,所以大家的分数都有点惨烈. 依靠T1大力骗分水到Rank2 所以想看正解的话看这里吧 A. 「雅礼NOI2018模拟赛(一) Day1」树 看一眼题目感觉十 ...

  7. Postgres使用ALTER USER命令修改用户的密码、密码过期,锁定,解锁

    使用ALTER USER命令修改用户的密码.密码过期,锁定,解锁 (1)修改用户的口令,将用户的口令修改为新的密码 highgo=#create user test with password ‘te ...

  8. VS2017一步一步断点调试解决Dapper语句出现的Bug

    最近再做一个项目,出现一个小bug,bug虽小,但是却要命啊.下面我show下我解决问题的方法. View层代码: @model List<mhq.Blog.Model.Blog> < ...

  9. Nginx code 常用状态码学习小结

    最近了解下Nginx的Code状态码,在此简单总结下.一个http请求处理流程: 一个普通的http请求处理流程,如上图所示:A -> client端发起请求给nginxB -> ngin ...

  10. bootstrap是什么

    Bootstrap,来自 Twitter,是目前最受欢迎的前端框架. Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. 本教程将向您讲解 ...