angular $http / jquery complete equivalent
angular-promise, angularjs, callback, http, promise
Solution
Update Aug 2014: `.always` has been renamed `.finally` in recent versions of Angular. Prefer `.finally` to `.always`.
Note that in order to support IE8 you have to call it with bracket notation as `["finally"]`.
You can use `.always` in AngularJS
This change is rather new (you could do that in jQuery for a while), you can see the commit here. This requires you to have AngularJS 1.1.5 or higher.
`always(callback)` – allows you to observe either the fulfillment or rejection of a promise, but to do so without modifying the final value. This is useful to release resources or do some clean-up that needs to be done whether the promise was rejected or resolved. See the full specification for more information.
Fiddle
Problem
Is there a way to emulate jquery 'complete' callback with angular $http module? I have some code I would like to execute no matter whether the request succeeded or failed and at the moment I find myself having to write this: ``` $http.get(someUrl).success(function(){ successCode(); completeCode(); }).error(function(){ errorCode(); completeCode(); }) ``` but I would rather write something like: ``` $http.get(someUrl).success(function(){ successCode(); }).error(function(){ errorCode(); }).complete(function(){ completeCode(); }) ``` I've tried also using the promise API but I end up having the same problem. Any suggestion?