$ window.location = pdfLocation;不下载PDF AngularJs

时间:2017-03-29 08:58:26

标签: javascript angularjs pdf angular-promise window.location

我收到了角色的pdf文档的位置,我不能让它一直下载。

它适用于我的家用笔记本电脑,但不能在工作时使用。 代码

RenderService.document('document.pdf', spec).then(function(pdfLocation) {
    $window.location = pdfLocation;
});

在家中使用Ubuntu的Chrome浏览器,而不是在工作中设置相同的设置。有谁知道为什么操作' $ window.location'不是幂等的吗?

更新: 也适用于我的工作机器上的FF,而不是Chrome

2 个答案:

答案 0 :(得分:1)

如果您安装了第三方软件或者浏览器安全性配置为高,则会发生这种情况。检查addblocker&计算机上的antivir软件,还要检查浏览器中的安全配置。如果您的应用程序在HTTPS上运行,请确保您的pdf位置基于HTTPS

对于Chrome& Safari尝试设置window.location.href属性而不是window.location。这应该适用于所有浏览器。

RenderService.document('document.pdf', spec).then(function(pdfLocation) {
    window.location.href = pdfLocation;
    return false;
});

这是plnkr demo,它在Chrome中运行良好。

答案 1 :(得分:0)

感谢@lin,由于Chrome中的高级安全选项,我发现问题是chrome阻止了我的下载: "保护您和您的设备免受危险场所的伤害"

我不确定如何解决这个问题,如果找到解决方案,我会更新此答案