2017-09-13 3 views
-1

angular2에서 파일 다운로드를 트리거하는 함수를 호출하려고합니다. 이 데이터는없는 서버의 angular2 응용 프로그램 (의 메모리에 저장됩니다. 내가 데이터 URI 여기 를 만들 필요가 읽은 것을 바탕으로이 작업을 수행하는 내 코드입니다.함수를 통해 angular2의 DataURI로 이동

downloadData() { let data="bacon,goodness"; let uri = this._sanitizer.bypassSecurityTrustUrl("data:text/csv;charset=UTF-8," + encodeURIComponent(data)); this.download=uri; window.location.href = uri; }

내 문제 내가 명령을 실행할 수 없다는 것입니다

'window.location.href = URI'이 오류 'SafeUrl'를 제공

문자열 에 할당 할 수없는

함수 내부에서 SafeUrl로 이동하는 또 다른 방법이 있나요

+0

window.open (URI)를? – jlareau

+0

같은 문제가 있습니다. window.open은 문자열을 기대합니다. –

+0

당신은 아마 당신의 문자열을 얻을 필요가 있습니다. uri.getSafeUrlString()을 호출 할 수 있습니까? – jlareau

답변

0

마침내 위생 처리를 포기했습니다. api가 safeURL을 사용할 수있는 유일한 방법은 [href]에 대한 매개 변수입니다. 이것은 보안을 위해 의도적으로 사용 된 것 같습니다.

나는이 지금 :

window.location.href = "data:text/csv;charset=UTF-8," + encodeURIComponent(data);