收藏
回答

wx.downloadFile 开发版本、体验版本均可下载图片,线上版本直接fail?

微信开发者工具Stable 1.06.2307250

已经配置域名 downloadFile合法域名 https://test.hehe.com (域名是假的,为了不公开域名,见谅

点击图片 调用wx.downloadFile

const previewImage = () => {
    const url = props.src;
    const path = BASE_URL_WEIXIN + url.substring(url.indexOf("/dms"));
    wx.downloadFile({
        url: path,
        success: (result) => {
            console.log('下载正确')
        },
        fail: () => {
            console.log('下载失败')
        },
    });
};


打印path 为https://test.hehe.com/api/dms/file/stream?id=12133224

用户隐私协议如下:

根据法律规定,开发者仅处理实现小程序功能所必要的信息。

  • 为了打卡定位,开发者将在获取你的明示同意后,收集你的位置信息。
  • 为了快捷登录,开发者将在获取你的明示同意后,收集你的手机号。
  • 为了加载照片,开发者将在获取你的明示同意后,使用你的相册(仅写入)权限。
  • 开发者 收集你选中的照片或视频信息,用于教师审核。
  • 开发者 收集你选中的文件,用于教师审核。


开发版、体验版(无调试模式)均能正确下载,发布到线上提示下载失败,即走了fail。

请教各位.


回答关注问题邀请回答
收藏

5 个回答

  • DDman
    DDman
    2023-11-29

    2023-11-29
    有用
    回复
  • 沉淀
    沉淀
    2023-11-29

    我也遇到了相同问题,请问解决了吗

    2023-11-29
    有用
    回复 3
    • DDman
      DDman
      2023-11-29
      2023-11-29
      回复
    • DDman
      DDman
      2023-11-29
      下载的域名配置下
      2023-11-29
      回复
    • 沉淀
      沉淀
      2023-11-29回复DDman
      下载域名如果不合法的话,那么体验版是不是也下载不了。我的问题是体验版下载没问题,但是线上下载就报错了
      2023-11-29
      回复
  • UTF-8
    UTF-8
    2023-08-24

    快来人啊

    2023-08-24
    有用
    回复
  • 红薯
    红薯
    2023-08-24
            fail: (e) => {
                console.log('下载失败')
                console.log(e)
            },
     先这样看一下报错信息
    
    2023-08-24
    有用
    回复 2
    • UTF-8
      UTF-8
      2023-08-24
      线上版本看不到的吧?
      2023-08-24
      回复
    • 红薯
      红薯
      2023-08-24回复UTF-8
      可以的,先用体验版或者开发版打开调试,再上正式版小程序也会有调试的
      2023-08-24
      回复
  • 媆媆
    媆媆
    2023-08-24

    你在fail里面打印一下报错信息,例如

    const previewImage = () => {
        const url = props.src;
        const path = BASE_URL_WEIXIN + url.substring(url.indexOf("/dms"));
        wx.downloadFile({
            url: path,
            success: (result) => {
                console.log('下载正确')
            },
            fail: (err) => {
                console.log('下载失败',err)
            },
        });
    };
    


    2023-08-24
    有用
    回复 2
    • UTF-8
      UTF-8
      2023-08-24
      线上加上这个 能在哪里看到报错信息呢?
      2023-08-24
      回复
    • 媆媆
      媆媆
      2023-08-24回复UTF-8
      那只能弹个框显示报错信息了
      2023-08-24
      回复
登录 后发表内容