Http请求封装

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <script src="angular.min.js"></script>
    <script src="jquery.min.js"></script>
</head>
<body ng-app="myApp">

<div ng-controller="myController">
</div>

</body>

<script>
    var app = angular.module('myApp', []);
    //定义服务
    app.service('commonFun', function ($http) {
        this.httpPost = function (url, dataObj, successFun, errorFun) {
            $http({
                method: 'POST',
                url: url,
                data: dataObj,
                headers: {
                    'Content-Type': 'application/x-www-form-urlencoded'
                },
                transformRequest: function (data) {
                    var str = '';
                    for (var i in data) {
                        str += i + '=' + data[i] + '&';
                    }
                    return str.substring(0, str.length - 1);
                }
            }).then(function successCallback(response) {
                if (successFun == null) {
                    alert("请求数据成功!")
                }
                else {
                    successFun(response);
                }
            }, function errorCallback(response) {
                //alert("getMenuListByMenuNameInRegex 请求数据错误!");
                if (errorFun == null) {
                    alert("url 请求数据错误!")
                } else {
                    errorFun(response);
                }
            });
        };

        this.httpPostFile = function (url, dataObj, successFun, errorFun) {
            var fd = new FormData();
            for (var i in dataObj) {
                fd.append(i, dataObj[i]);
            }
            $http({
                method: 'POST',
                url: url,
                data: fd,
                headers: {'Content-Type': undefined},
                transformRequest: angular.identity
            }).then(function successCallback(response) {
                if (successFun == null) {
                    alert("请求数据成功!")
                }
                else {
                    successFun(response);
                }
            }, function errorCallback(response) {
                //alert("getMenuListByMenuNameInRegex 请求数据错误!");
                if (errorFun == null) {
                    alert("url 请求数据错误!")
                } else {
                    errorFun(response);
                }
            });
        };

        this.httpGet = function (url, successFun, errorFun) {
            $http({
                method: 'GET',
                url: url
            }).then(function successCallback(response) {
                if (successFun == null) {
                    alert("请求数据成功!")
                }
                else {
                    successFun(response);
                }
            }, function errorCallback(response) {
                if (errorFun == null) {
                    alert("url 请求数据错误!")
                } else {
                    errorFun(response);
                }
            });
        };

        this.isEmptyObject = function (e) {
            var t;
            for (t in e) {
                return !1;
            }
            return !0
        };

        this.scollToElement = function (selector) {
            console.info("selector == " + selector);
            var elementVar = $(selector);
            var num = elementVar.length;
            console.info("num == " + num);
            console.info("elementVar == " + elementVar);
            var elementHeight = elementVar.outerHeight(true);
            console.info("elementHeight == " + elementHeight);
            //var elementOffsetTop = elementVar.offsetTop;
            var elementOffsetTop = elementVar.offset().top;
            console.info("elementOffsetTop == " + elementOffsetTop);
            $(document).scrollTop(elementOffsetTop + elementHeight);
        }
    });

    app.controller('myController', function ($scope, commonFun) {
        function getMenuListAllSuccessFun(response) {
            var errorCode = response.data.errorCode;
            console.info("errorCode == " + errorCode);
            console.info("data == " + response.data);
        }

        function getMenuListAll() {
            var url = 'http://119.23.31.212/common/CookerRecipeController/getMenuList';
            commonFun.httpGet(url, getMenuListAllSuccessFun);
        }

        function getMenuContentSuccessFun(response) {
            var errorCode = response.data.errorCode;
            console.info("errorCode == " + errorCode);
            console.info("data == " + response.data);
        }

        function getMenuContent(menuId) {
            var url = 'http://119.23.31.212/common/CookerRecipeController/getCookerRecipeByMenuId';
            var data = {menuId: menuId};
            commonFun.httpPost(url, data, getMenuContentSuccessFun);
        }

        function getMenuContent2(menuId) {
            var url = 'http://119.23.31.212/common/CookerRecipeController/getCookerRecipeByMenuId';
            var data = {menuId: menuId};
            commonFun.httpPostFile(url, data, getMenuContentSuccessFun);
        }

        getMenuListAll();
        getMenuContent(30000);
        getMenuContent2(30000);
    });
</script>
</html>

猜你喜欢

转载自huangyongxing310.iteye.com/blog/2373509