【发布时间】:2025-12-26 02:30:10
【问题描述】:
出于测试目的(为了使用 $httpBackend),我想将我的服务转换为使用 $http 而不是 jQuery $.ajax。
我目前的服务是这样的
app.service('myService', function() {
return {
getUserById: function(id) {
return $.ajax({
url: ...,
type: 'GET'
...
})
.fail(function()){}
});
所以,服务处理失败,我让调用该方法的客户端来处理其余部分,如下所示:
myService.getUserById(123)
.done(function(data){
// use data
})
.always(function()){
// do stuff
}
现在,使用 Angular $http 我不确定如何重现相同的行为。 这是AngularJS website的用法:
$http({
method: 'GET',
url: '/someUrl'
})
.then(successCallback, errorCallback);
如何在客户端和服务之间“拆分”成功和错误回调函数?
【问题讨论】:
标签: angularjs unit-testing jasmine