2017-03-09 13 views
2

서버에서 호출하는 pdf 파일을 열려고하는데 파일을 arraybuffer 형식으로 수신합니다. 필자는 $ window.open을 사용하여 새 탭에서 pdf 파일을 열고 다른 형식으로 파일을 변환하는 여러 가지 방법을 시도했습니다. 다운로드를 제안하기 전에 작동하지만 새 탭에서 열고 팝업으로 보는 것이 안전합니다. "BLOB : http://console:8012/3c8b129d-3544-4f7e-a606-cf4b5eb6e1f3" 을하고 그것이 방울로 시작하기 때문에 내 문제는 안전하지 않은 것입니다 :pdf 새 탭에서 안전하지 않은 얼룩 열기 angularjs

PDF를은 BLOB으로 변환 한 후 URL을 함께 열리고 크롬이 안전하지 않은 표시합니다.

아무도이 문제를 해결하는 방법을 찾지 못했습니다. 감사

+1

nfokho user3909194 –

+0

읽기 @ [AngularJS와 $ compileProvider API 참조 - aHrefSanitizationWhitelist] (https://docs.angularjs.org/api/ng/provider/$compileProvider#aHrefSanitizationWhitelist). – georgeawg

+0

새 탭에서 pdf를 여는 데 사용 된 코드와 정확한 오류 메시지를 제공해주십시오. – georgeawg

답변

0

하여 각 응용 프로그램의 config 블록에 주입한다 $compileProvider 및 다음 줄을 추가 : AngularJS와 v1.6에 대한

$compileProvider.aHrefSanitizationWhitelist(/^\s*(blob):/); 
+0

답장을 보내 주셔서 감사합니다.하지만 이미 글을 쓰고 아직 블롭이 안전하지 않은 것으로 표시되어 있습니다. –

+0

실제로 어제도 똑같이하고 있었고 저에게 효과적이었습니다. – pranavjindal999

+0

이 app.config와 같은 main.js 파일에 추가했습니다. function ($ compileProvider) { $ compileProvider.aHrefSanitizationWhitelist (/^\ s * (BLOB) : /); }); 그런 식으로 맞습니까? –

0

기본 위생 화이트리스트입니다 1 다음 $compileProvider.aHrefSanitizationWhitelist method

var aHrefSanitizationWhitelist = /^\s*(https?|ftp|mailto|tel|file):/, 
    imgSrcSanitizationWhitelist = /^\s*((https?|ftp|file|blob):|data:image\/)/; 

사용 화이트리스트에 blob을 추가하십시오.

app.config(function($compileProvider) { 
    var hrefWhiteList = /^\s*(https?|ftp|mailto|tel|file|blob):/; 
    $compileProvider.aHrefSanitizationWhitelist(hrefWhiteList); 
});