2016-09-12 2 views
1

서버에서 $ http GET() 요청을 통해받은 URL에서 PDF를 다운로드하고 싶습니다. $ http는 프론트 엔드에서 버튼을 클릭하자 마자 시작됩니다. $ http의 성공에 따라 PDF 파일이 저장된 URL이 수신되고 $ http 요청의 성공에 따라 자동으로 다운로드되기를 원합니다. 이것을 어떻게 성취합니까?ANGULARJS : 서버에서받은 URL에서 PDF를 다운로드하려면 어떻게합니까?

편집 : 여기

는 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

성공 함수 안에를 작성하십시오.3210 요소 지정하여 $ 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도 참조하십시오. 파일을 다운로드 할 수있는 기능을 개발할 수있는 라우트 라우트에 다른 $ http 호출을 할 수 있습니다. –

관련 문제