加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 如何以角度扩展$http服务?

发布时间:2020-12-17 10:34:21 所属栏目:安全 来源:网络整理
导读:不幸的是,我们的运行速度为1.2.26(当它被宝石化时会升级到1.2.28). 在此期间,我如何修补(heh)$http以便可以使用短手补丁方法?我对整个服务/工厂/模块的事情都很陌生.我已经做了几个小时的搜索,似乎无法搞清楚. myApp.factory('patchedHTTP',function($http,
不幸的是,我们的运行速度为1.2.26(当它被宝石化时会升级到1.2.28).

在此期间,我如何修补(heh)$http以便可以使用短手补丁方法?我对整个服务/工厂/模块的事情都很陌生.我已经做了几个小时的搜索,似乎无法搞清楚.

myApp.factory('patchedHTTP',function($http,BasicService) {
  // $http['patch'] = function(url,data,config) {
  //   return $http(angular.extend(config || {},{
  //     method: 'patch',//     url: url,//     data: data
  //   }));
  // };
  var extended = angular.extend(BasicService,{});
  extended.createShortMethodsWithData('patch');
  return extended;
});

以上是我得到的最好的……它没有做任何XD

module.decorator已添加到1.4版的模块API中.这就是它在1.2.x中不起作用的原因.

请在下面找到一个工作演示或在jsfiddle.

我花了一段时间来实现补丁方法,因为我错过了返回$http的承诺.但现在它应该工作.

angular.module('patchDemo',[])
.config(function ($provide) {

    $provide.decorator('$http',function ($delegate) {
        // NOTE: $delegate is the original service
		$delegate.patch = function(url,config) {
            var paramsObj = angular.extend({},config || {},{
                method: 'PATCH',url: url,data: data
            });

            return $delegate(paramsObj);
        }
		
        return $delegate;
    });
})
.controller('MainController',MainController);

function MainController($http) {
    console.log($http.patch);
    //$http({method: 'PATCH',url: 'http://jsonplaceholder.typicode.com/posts/1',data: {title:'foo'}}); //>>>>>working long version of patch

    $http.patch('http://jsonplaceholder.typicode.com/posts/1',{
        title: 'foo'
    }).then(function(response) {
    	console.log(response);
    });

}
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.26/angular.js"></script>
<div ng-app="patchDemo" ng-controller="MainController"></div>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读