2016-09-12 3 views
1

Я хочу загрузить PDF-код из URL-адреса, полученного с помощью запроса $ http GET() с сервера. $ Http инициируется, как только кнопка нажата на интерфейсе. Об успехе $ http получают URL-адрес, где сохраняется файл PDF, и хотите, чтобы он автоматически загружался при успешном запросе $ http. Как мне это достичь?ANGULARJS: Как загрузить PDF из URL-адреса, полученного с сервера

EDIT:

Вот HTML код:

<div class="button clearfix"> 
    <button class="btn btn-primary pull-left m-b" ng-click="generateReport()">Download Report</button> 
</div> 

Вот мой контроллер (Angularjs) код:

$scope.generateReport = function() { 
     $http.get('/pdfreport').success(function(response) { 
      $scope.url = response; 
     }).error(function(response) { 
      console.log("Failed"); 
     }); 
    } 

Я хочу, чтобы загрузить файл с $ scope.url, когда кнопка нажимается

+0

'$ окно .location.href = pdfUrl' – Phil

+0

Не могли бы вы предоставить ваш код? –

ответ

0

Внутри вашей функции успеха создайте <a> элемент и назначить $ scope.url (или reposnse данных) в HREF атрибута, а затем вызвать нажмите метод созданного <a> элемента для загрузки файла автоматически:

var createA = document.createElement("a") 
    createA.setAttribute('href', $scope.url); 
    createA.click(); 
+0

Это сработало. Единственная проблема заключается в том, что она не загружается, а открывается, как мне добиться загрузки файла. например: $ scope.url = 'http://fastandfluid.com/publicdownloads/AngularJSIn60MinutesIsh_DanWahlin_May2013.pdf'; –

+0

@chiragshah, если атрибут загрузки создает проблему (так как это атрибуты HTML5). Вы можете сделать другой вызов $ http на ваш маршрут laravel, где вы можете развернуть функцию для загрузки файла. –

Смежные вопросы