美文网首页
ajax封装

ajax封装

作者: 每天进步一点点5454 | 来源:发表于2021-02-05 15:32 被阅读0次

    可根据需求进行修改
    异步请求

            var url = "https://baidu.com";
            function fn(item,fn) {
                var result = { 'flag': false, 'data': undefined };
                $.ajax({
                    async: item.async,
                    url: url + item.url,
                    dataType: 'json',
                    type: item.method,
                    data: item.param,
                    success: function (res) {
                        if (json.status == 1) {
                            result.flag = true;
                            result.data = res.data;
                            fn(result)
                        } // else 错误状态码 504 401等,有的接口有判断504,5..等
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                        console.log(XMLHttpRequest.status);
                    }
                });
            }
    
            var data = fn(item,function (data) {
                 //写代码逻辑
            });
    
    
    

    //同步的情况可以写

    
            function fn(item) {
                var result = { 'flag': false, 'data': undefined };
                $.ajax({
                    async: item.async,
                    url: url + item.url,
                    dataType: 'json',
                    type: item.method,
                    data: item.param,
                    success: function (res) {
                        if (res.status == 1) {
                            result.flag = true;
                            result.data = res.data;
                            return result;
                        } else if (res.status == 504) {
                            alert(res.message);
                        } else {
                            alert(res.message);
                        }
                    },
                    error: function (XMLHttpRequest, textStatus, errorThrown) {
                        console.log(XMLHttpRequest.status);
                    }
                });
            }
            var item = {};
            item.async = false;
            item.url = "/123";
            item.type = "GET";
            item.param = { aa: 1, nn: 22 }
            var data = fn(item);
            if (data.flag) {
                //代码逻辑
            }
    
    
    

    相关文章

      网友评论

          本文标题:ajax封装

          本文链接:https://www.haomeiwen.com/subject/bcfgtltx.html