pdf 在新标签页中打开不安全的 blob angularjs
pdf opening unsafe blob in new tab angularjs
我正在尝试打开一个从服务器调用的 pdf 文件,我收到了数组缓冲区格式的文件。我尝试了很多方法来使用 $window.open 在新选项卡中打开 pdf 文件并将文件转换为其他形式。在您建议下载之前,它可以工作,但我想在新选项卡中打开它,并且可以安全地以弹出窗口的形式查看它。
pdf 在将其转换为 blob 后以 url 打开:
"blob:http://console:8012/3c8b129d-3544-4f7e-a606-cf4b5eb6e1f3"
我的问题是它不安全,因为它以 blob: 开头,并且 chrome 将其标记为不安全。
有人知道如何解决这个问题吗?
谢谢
在 angular 应用的配置块中注入 $compileProvider
并添加以下行:
$compileProvider.aHrefSanitizationWhitelist(/^\s*(blob):/);
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);
});
我正在尝试打开一个从服务器调用的 pdf 文件,我收到了数组缓冲区格式的文件。我尝试了很多方法来使用 $window.open 在新选项卡中打开 pdf 文件并将文件转换为其他形式。在您建议下载之前,它可以工作,但我想在新选项卡中打开它,并且可以安全地以弹出窗口的形式查看它。
pdf 在将其转换为 blob 后以 url 打开: "blob:http://console:8012/3c8b129d-3544-4f7e-a606-cf4b5eb6e1f3" 我的问题是它不安全,因为它以 blob: 开头,并且 chrome 将其标记为不安全。
有人知道如何解决这个问题吗? 谢谢
在 angular 应用的配置块中注入 $compileProvider
并添加以下行:
$compileProvider.aHrefSanitizationWhitelist(/^\s*(blob):/);
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);
});