How to handle $resource service errors in AngularJS

angular-resource, angularjs

Solution

you can pass the error handler as a second parameter to`query`.

Category.query(function(data) {}, function() {});

EDIT:

to make things a bit clearer, some examples:

var Resource = $resource('/restapi/resource');

Resource.query(function(data) {
    // success handler
}, function(error) {
    // error handler
});

Resource.query({
    'query': 'thequery'
},function(data) {
    // success handler
}, function(error) {
    // error handler
});

Resource.query().$promise.then(function(data) {
    // success handler
}, function(error) {
    // error handler
});

Resource.query({
    'query': 'thequery'
}).$promise.then(function(data) {
    // success handler
}, function(error) {
    // error handler
});

Problem

I am making requests to my API and I am using AngularJS $resource module. It's different from $http so I don't know how to handle my errors. My service: ``` var appServices = angular.module('app.services', ['ngResource']); appServices.factory('Category', ['$resource', function($resource){ return $resource('/apicategoryerr/?format=:format', {}, { query: { method: 'GET', params: { format: 'json'}, isArray: true, } }); }]); ``` My Controller: ``` ... Category.query(function(data) { console.log(data); }); ... ``` I want something like this or .. I don't know a way to handle errors if my API is not working.. ``` Category.query().success(function() { console.log('success'); }).error(function() { console.log('error'); }); ```

Original source