使用angularJs资源下载XML文件

时间:2014-01-23 07:45:08

标签: angularjs download angular-resource ngresource

我正在尝试使用angularJs资源从服务器下载文件,但它不起作用。 我的代码如下:

// service
angular.module("someModule")
.factory('generate', ['$resource', '$rootScope', function ($resource, $rootScope) {
return $resource('some url...');}]);


//Js controller file - I'm getting the 'generate' service in the head of the controller
 $scope.$on('generateFile', function(){
    generate.get();
});


//html
<a ng-click="$emit('generateFile')"></a>

当我输入网址时,它会下载文件 - 所以服务器端没问题。但是,我找不到使用角度资源下载文件的任何示例。 谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

使用拦截器来获取responseXML:

function grabResponseXML($q, dependency1, dependency2) 
    {
    return {
           'response': function(response) 
              {
              var deferred = $q.defer();

              if (response.headers()['content-type'] === 'text/xml; charset="UTF-8"') 
                {
                localStorage.setItem('xmlResponse', response.responseXML);
                }
              deferred.resolve(response);

              return deferred.promise;
              }
           }
    }             

$httpProvider.interceptors.push(grabResponseXML);

<强>参考