5***@qq.com
5***@qq.com
  • 发布:2024-12-06 23:44
  • 更新:2024-12-06 23:45
  • 阅读:82

【报Bug】关于 uni.downloadFile API BUG

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Mac

PC开发环境操作系统版本号: 13.6.6

HBuilderX类型: 正式

HBuilderX版本号: 4.36

第三方开发者工具版本号: 1.06.24.09140

基础库版本号: 3.7.0

项目创建方式: HBuilderX

示例代码:

有效写法

        uni.downloadFile({  
            url: fileURL,  
            header:{  
                'myid':String(1),//需要转换  
                'token':xxxxxxxxxx  
            },  
            success: successCallback||function(r) {  
                console.error('success',r);  
            },  
            fail: failCallback||function (e) {  
                console.error('fail',e);  
            },  
            complete: completeCallback||function () {  

            }  
        })

无效写法

        uni.downloadFile({  
            url: fileURL,  
            header:{  
                'myid':1,  
                'token':xxxxxxxxxx  
            },  
            success: successCallback||function(r) {  
                console.error('success',r);  
            },  
            fail: failCallback||function (e) {  
                console.error('fail',e);  
            },  
            complete: completeCallback||function () {  

            }  
        })

操作步骤:

看代码

预期结果:

与 uni.request 保持一致

实际结果:

uni.downloadFile 需要转换类型。uni.request 不需要转换

bug描述:

uni.downloadFile API 设置自定义 header 参数时,如果值是数字,在真机环境中,无法被传入。
在拦截器中,现在参数是传入的,但是在更底层API中,数字无法传入。
必须是字符串类型。

        uni.downloadFile({  
            url: fileURL,  
            header:{  
                'myid':String(1),//需要转换  
                'token':xxxxxxxxxx  
            },  
            success: successCallback||function(r) {  
                console.error('success',r);  
            },  
            fail: failCallback||function (e) {  
                console.error('fail',e);  
            },  
            complete: completeCallback||function () {  

            }  
        })

同样的写法,在 uni.request API 中,能正常。在 uni.downloadFile API 坑

            uni.request({  
                url: _host + url,  
                data: postData,  
                method: 'POST',  
                header: {  
                        'myid':1,//不需要转换  
                        'token':xxxxxxxxxx  
                                },  
                success: (res_data) => {  

                },  
                fail: (res_data) => {  

                },complete: () => {  
                }  
            });
2024-12-06 23:44 负责人:无 分享
已邀请:
5***@qq.com

5***@qq.com (作者)

坑啊。大坑

要回复问题请先登录注册