AngularJS - acessando cabeçalhos http

Eu estou tentando acessar os cabeçalhos http no meu controlador angular, mas estou ficando indefinido. Além disso, consigo ver a resposta do cabeçalho no meu serviço angular, que não está refletindo no meu controlador. Alguém pode me dizer o que estou perdendo? Por favor veja o código abaixo:

Serviço:

cmApp.service('supplierService', function ($http, $q) {
    this.getSuppliers = function (orderByColumn, skipRows, takeRows) {
        var deferred = $q.defer();
        $http({
            method: 'GET',
            url: 'api/supplier',
            params: { orderBy: orderByColumn, skip: skipRows, take: takeRows },
            timeout: 30000, 
            cache: false
        }).
        success(function (data, status, headers, config) {
            // any required additional processing here            
            deferred.resolve(data, status, headers, config);            
        }).
        error(function (data, status) {
            deferred.reject(data, status, headers, config);
        });
        return deferred.promise;        
    }

Controlador:

   supplierService.getSuppliers($scope.orderby, $scope.skip, $scope.take)
        .then(function (data, status, headers, config) {
            **//getting undefined here.**
            $scope.totalRecords = parseInt(headers('X-TotalRowCount'));                
            $scope.suppliers = data;
        }, function (error) {
            // error handling here
        });

questionAnswers(4)

yourAnswerToTheQuestion