使用错误处理的HTML文件下载,文件未找到(FileNotFound)。

8
我想在点击链接时下载一个文件。该文件是动态提供的。
<a href="/server/myfunc?id=XXX" download="proposed_file_name">Download!</a>

但是如果/server/myfunc?id=XXX链接没有提供文件,我需要能够向用户显示错误。如果文件不存在,我可以通过此链接返回布尔值false或任何http代码。

对于这种实现,最合适的方法是什么?请注意,我不希望以任何方式更改页面的当前状态,只需触发文件下载而不影响页面,并在无法下载文件时显示错误。

2个回答

0

我知道我回复得很晚,但对于面临这种问题的人可能有用。

当使用同步HTTP调用时,很难显示错误消息,因为它会替换整个网页,而我们不希望出现这种情况。
因此,最好使用AJAX

点击这里JohnCulviner博客了解更多详情-如何使用AJAX进行下载

此外,请查看以下SO链接通过查询Ajax下载文件


0
你不能只使用 HTML 来实现这个,因为它是一种静态语言。我建议你使用在 PHP 或 Java 中编写的 'if/else' 语句。这里有一些 文档,以及一个具体的示例 这里。无论如何,这里有一个可能完全符合你情况的示例(考虑到你正在将 PHP 插入 HTML 中)。
<?php 
var = url
if (isset($var) && ($var === true){ ?>
<a href="/server/myfunc?id=XXX" download="proposed_file_name">Download!</a>
<?php } else { ?>
<p>Hey, there is no URL!</p>
<?php } ?>

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接