由于ios由UIWebView换成了WKWebview内核后导致webview请求接口文件上传,后台接收不到文件

2020年4月起App Store将不再接受使用UIWebView的新App上架、2020年12月起将不再接受使用UIWebView的App更新。

解决后台文件接收不到的问题

function GLABLE_doPost(url, req, successCallback, errorCallback, type) {
    mui.showLoading("正在加载..", "div");
    console.log('请求参数', req.get("file"))
    console.log('请求URL', host_svr + url)
    console.log('请求token', localStorage.getItem('token'))
    //标准xhr可以正常提交文件,plus的xhr提交的文件为空
    mui.ajaxSettings.xhr = function(protocol) {
        return new window.XMLHttpRequest();
    };
    mui.ajax(host_svr + url, {
        data: req,
        // dataType:'json',//服务器返回json格式数据
        processData: false, //不要处理数据
        contentType: false,
        type: 'POST', //HTTP请求类型
        timeout: 60000, //超时时间设置为10秒;
        headers: {
            // 'Content-Type':'multipart/form-data',
            'Authorization': localStorage.getItem('token')
        },
        success: function(res) {
            console.log('成功', JSON.stringify(res));
            try {
                mui.hideLoading();
            } catch (e) {}
            if (res.code == 200) {
                successCallback(res)
            } else {
                mui.toast(res.msg)
            }
        },
        error: function(xhr, type, errorThrown) {
            try {
                mui.hideLoading();
            } catch (e) {}
            //异常处理;
            console.log(type);
        }
    });

}

 

posted @ 2020-09-24 11:07  奔跑吧前端(李钊)  阅读(764)  评论(0编辑  收藏  举报