angularJS 利用 service 封装 POST 请求

Posted 董七

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了angularJS 利用 service 封装 POST 请求相关的知识,希望对你有一定的参考价值。

angular.module(‘app‘,[]).service(‘postService‘,function($http){
    return {
        postRequset:function(url,obj,succCallBack,errorCallBack){
           return $http({
                method:‘post‘,
                url:url,
                data:obj || {},
                headers:{‘Content-Type‘:‘application/x-www-form-urlencoded‘},
                transformRequest:function(obj){
                    var str = [];
                    for(var p in obj ){
                        str.push(encodeURIComponent(p) + ‘=‘ + encodeURIComponent(obj[p]);
                    }
                    return str.join(‘&‘);
                }
            }) .success(function(data){
                    succCallBack && succCallBack(data);
            }).error(function(data){
                   errorCallBack && errorCallBack(data);
            })
        }
    }
})            

  

以下为重点:
headers:{‘Content-Type‘:‘application/x-www-form-urlencoded‘}, transformRequest:function(obj){ var str = []; for(var p in obj ){ str.push(encodeURIComponent(p) + ‘=‘ + encodeURIComponent(obj[p]); } return str.join(‘&‘); }

调用方法如下:
postService.postRequest(‘url的地址‘,‘data数据‘,function(data){
    console.log(data);
})

  








以上是关于angularJS 利用 service 封装 POST 请求的主要内容,如果未能解决你的问题,请参考以下文章

angularjs控制器之间通信,事件通知服务

angularjs2 listview的封装

Angularjs 数据存储最佳实践

AngularJS 自定义服务指令

关于js单页面实现跳转原理以及利用angularjs框架路由实现单页面跳转

angularjs怎么编写一个公共的弹出层插件