admin 사용자가 몇 가지 옵션을 설정하고 버튼을 클릭하여 보고서를 실행할 수있는 관리자 제어판이 있습니다. 보고서는 CSV 파일 다운로드 프롬프트를 사용자에게 보내야합니다.AngularJS CSV 파일 다운로드 API
나는 ui-router
과 $resource
서비스를 사용하고 있습니다. 응답 헤더/MIME 유형이 올바르게 설정되었지만 $resource
처리기로 CSV 파일이 텍스트로 반환됩니다 (파일 다운로드가 시작되지 않음).
$scope
에서 쿼리 문자열을 작성하여 직접 다운로드 링크를 만들려고했지만 불행히도 내 API의 인증 스키마가 사용자 정의 HTTP 헤더 토큰을 사용하고 API (다른 하위 도메인에도 있음)로 전송할 수 없습니다. 이와 하나 앵커 태그를 통해 :
<a href="http://example.com/admin/report/csv?usertype=1&days=5">Run</a>
(사용자 정의 헤더)는 XHR 요청을 사용하여 파일 다운로드 프롬프트를 시작하는 방법이 있나요?
합리적인 것처럼 보이지만 예제로 바이올린이나 요점이 있습니까? 또는 스크립트로 대답을 업데이트 할 수 있습니까? 감사합니다 –
답변 해 주셔서 감사합니다. 오후, 매력 아래서 작동하는 Harper 게시물 다음에 나오는 코드를 찾으십시오! 뷰 :) ($ scope.exportToCsv = 함수 : 나머지 서비스를 가정 컨트롤러 은 부재는 CSV 원시 데이터를 포함하는 데이터를 호출하여 객체를 반환 { ReportAction.runFullReport ($ scope.filterCriteria). $ promise.then (function (result) { var blob = new Blob ([result.data], {text/plain; charset = utf-8 "})), saveAs (blob, "report.csv"); }), function() { console.log ('error'); }; }; –