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. 一图尽知XMIND

  2. 完整卸载 kUbuntu-desktop from Ubuntu 14.04 LTS系统 ubuntu14.04 LTS 64Bit

    sudo apt-get remove libkde3support4 k3b-data ntrack-module-libnl-0 libkrosscore4 libgpgme++2 libqapt ...

  3. Android多线程—HandlerThread解析

    一.HandlerThread作用 1.实现多线程:在工作线程之后执行任务(比如一些耗时任务) 2.异步通信.消息传递:实现工作线程与主线程(UI线程)之间的通信,即将工作线程的执行结果传递给主线程, ...

  4. [03] Spring "Hello World"

    0.写在前面的话 本篇以一个简单的示例,描述了Spring通过容器对于Java类的装载和获取.在以下我们可以看到,有一个Java类Coder,我们全程并没有手动调用new来进行实例化,而是从Sprin ...

  5. Codechef STREDUC Reduce string Trie、bitset、区间DP

    VJ传送门 简化题意:给出一个长度为\(l\)的模板串\(s\)与若干匹配串\(p_i\),每一次你可以选择\(s\)中的一个出现在集合\(\{p_i\}\)中的子串将其消去,其左右分成的两个串拼接在 ...

  6. Luogu3760 TJOI2017 异或和 树状数组

    传送门 题意:给出一个长度为$N$的非负整数序列,求其中所有连续区间的区间和的异或值.$N \leq 10^5$,所有元素之和$\leq 10^6$ 设序列的前缀和为$s_i$,特殊地,$s_0=0$ ...

  7. Luogu1979 NOIP2013D2T3 华容道 搜索、最短路

    题目传送门 题意:给出一个$N \times M$的棋盘,棋盘上有一些块可以移动,有一些块无法移动.$Q$次询问,每一次询问给出三个块$a,b,c$,将$a$块变为空格,空格旁边可移动的块可以与空格交 ...

  8. 案例学python——案例一:抓图

    最近项目不那么紧张,有时间来研究一下Python,先前断断续续的自学了一段时间,有些浅基础.刚好在码云上看到比较适合的案例,跟着案例再往前走一波. 案例一:爬虫抓图 开发工具:PyCharm    脚 ...

  9. Python从菜鸟到高手(5):数字

    1 基础知识   Python语言与其他编程语言一样,也支持四则运算(加.减.乘.除),以及圆括号运算符.在Python语言中,数字分为整数和浮点数.整数就是无小数部分的数,浮点数就是有小数部分的数. ...

  10. bootstrap datetimepicker 格式化yyyymmdd时,无法读取yyyymmdd格式

    不知为何,java程序员爱用yyyymmdd格式化日期?导致bootstrap datetimepicker无法解析正确的日期 发现js中yyyymmdd不是正常能够解析的日期 查看datetimep ...