function proxyCallback(callback) { return function (res) { if (res.status < 200 && res.status >= 300) { return callback(res.status, res.data.error); } return callback(null, res.data); } } function posts_list(callback) { var req = { method: 'GET', url: '/api/1/posts' }; $http(req).then(proxyCallback(callback)); }