在开发vue+hbuilder的时候 用的axios 发现在安卓4.x机器上不支持网络访问,怎么办?

发布于 2022-09-06 12:58:00 字数 396 浏览 14 评论 0

低版本安卓系统(4.x)不能使用,报错如下:
clipboard.png

我用过转译:用了 es6—promise、 babel-poly-fill
clipboard.png

有遇到过类似问题的大侠吗?
拜请解答 非常感谢。。。。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

素衣风尘叹 2022-09-13 12:58:00

用原生js 封装一个ajax文件、低版本兼容不好做啊
export default (url = '', data = {}, method = "get", success) => {

         var url = baseUrl + url;
   var  opt = opt || {};
         opt.method = method || 'POST';
    opt.url = url || '';
    opt.async = true;
    opt.data = data || null;
    opt.success = success || function () {};
    var xmlHttp = null;
    if (XMLHttpRequest) {
        xmlHttp = new XMLHttpRequest();
    }
    else {
        xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
    }var params = [];
    for (var key in opt.data){
        params.push(key + '=' + opt.data[key]);
    }
    var postData = params.join('&');
    if (opt.method.toUpperCase() === 'POST') {
        xmlHttp.open(opt.method, opt.url, opt.async);
        xmlHttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;charset=utf-8');
        xmlHttp.send(postData);
    }
    else if (opt.method.toUpperCase() === 'GET') {
        xmlHttp.open(opt.method, opt.url + '?' + postData, opt.async);
        xmlHttp.send(null);
    } 
    xmlHttp.onreadystatechange = function () {
        if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
            opt.success(JSON.parse(xmlHttp.responseText.split(',')));  //获取的数据、先数组化、再转换为JSON 格式。
        }
    };
}

一笑百媚生 2022-09-13 12:58:00

我在8.0版本的安卓上也出现Unhandled promise rejection这个报错,不清楚是不是与axios有关。。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文