Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript $window.location=pdfLocation;不下载PDF AngularJs_Javascript_Angularjs_Pdf_Angular Promise_Window.location - Fatal编程技术网

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

Javascript $window.location=pdfLocation;不下载PDF AngularJs,javascript,angularjs,pdf,angular-promise,window.location,Javascript,Angularjs,Pdf,Angular Promise,Window.location,我收到了一个pdf文档在angular中的位置,我无法持续下载它 它在我家的笔记本电脑上工作,但在工作时不能。 代码如下 RenderService.document('document.pdf', spec).then(function(pdfLocation) { $window.location = pdfLocation; }); 在家用Ubuntu上使用Chrome,而不是在工作时使用相同的设置。有人知道为什么“$window.location”的操作不是幂等的吗 更新: 在

我收到了一个pdf文档在angular中的位置,我无法持续下载它

它在我家的笔记本电脑上工作,但在工作时不能。 代码如下

RenderService.document('document.pdf', spec).then(function(pdfLocation) {
    $window.location = pdfLocation;
});
在家用Ubuntu上使用Chrome,而不是在工作时使用相同的设置。有人知道为什么“$window.location”的操作不是幂等的吗

更新:
在我的工作机器上也可以在FF上工作,只是不能在Chrome上工作。

多亏了@lin,我意识到问题是Chrome阻止了我的下载,因为Chrome中的高级安全选项: “保护您和您的设备不受危险场所的影响”


我还不知道如何解决这个问题,如果我找到了解决方案,我会更新这个答案。如果您安装了第三方软件,或者浏览器安全性被配置为高安全性,这通常会发生。检查您机器上的addblocker和Antiviri软件,并检查浏览器中的安全配置。如果应用程序运行在
HTTPS
上,请确保您的pdf位置基于
HTTPS

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

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

以下是一个在chrome中运行良好的应用程序。

什么“不工作”会一直存在?链接断了吗?它不会触发下载吗?什么都没有发生,js解析器通过了这一行,没有采取任何行动。您有一些add-blocker或anti-vir软件在这台机器上运行吗?尽管它以前工作过,有一天刚刚停止。我会调查一下是否有什么新的添加,它在Firefox中可以在我的工作机器上正常工作,感谢tipCheers m8=),很高兴能提供帮助。我应该发布答案吗?;)当然,请继续:)$widow.location.href不起作用,但当我从高级设置中取消选择“保护您和您的设备免受危险站点攻击”时,错误确实消失了。(我不想把它标记为正确的,因为它会让路过这里的人对实际问题感到困惑)您的
pdfLocation
是否持有像
http://domain/download.pdf
?使用
window
而不是AngularJS实例
$window
尝试一次。我将为测试创建一个提琴。。难以置信它=)$window.location在我更改它时在您的plunker中起作用,并且我的站点和pdf都在https上。所以这两者都不是。我还尝试了window而不是$window,但也不是这样。我的url是“”,我猜Chrome正在阻止它,因为它知道这是本地的疯狂,它应该也适用于本地域。能否添加
返回false如我的回答所述?恐怕没有什么区别