我正在尝试打开从服务器调用的pdf文件,我以arraybuffer的格式接收文件。我尝试了很多方法使用$ window.open在新选项卡中打开pdf文件,并将文件转换为其他表单。在您建议下载之前,它可以工作,但我想在新选项卡中打开它,可以安全地查看为弹出窗口。
将pdf转换为blob后,pdf会打开此url: "斑点:http://console:8012/3c8b129d-3544-4f7e-a606-cf4b5eb6e1f3" 我的问题是它不安全,因为它以blob开头:并且chrome将其标记为不安全。
任何人都知道如何解决这个问题? 感谢
答案 0 :(得分:1)
在角度应用的配置块中注入$compileProvider
并添加以下行:
$compileProvider.aHrefSanitizationWhitelist(/^\s*(blob):/);
答案 1 :(得分:0)
AngularJS v1.6的默认清理白名单是1:
var aHrefSanitizationWhitelist = /^\s*(https?|ftp|mailto|tel|file):/,
imgSrcSanitizationWhitelist = /^\s*((https?|ftp|file|blob):|data:image\/)/;
使用$compileProvider.aHrefSanitizationWhitelist method将blob
添加到其白名单。
app.config(function($compileProvider) {
var hrefWhiteList = /^\s*(https?|ftp|mailto|tel|file|blob):/;
$compileProvider.aHrefSanitizationWhitelist(hrefWhiteList);
});