【问题标题】:File download html with error handling FileNotFound带有错误处理 FileNotFound 的文件下载 html
【发布时间】:2015-05-05 00:21:21
【问题描述】:

我想在单击链接时下载文件。该文件是动态提供的。

<a href="/server/myfunc?id=XXX" download="proposed_file_name">Download!</a>

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

什么应该是最适合这个实现的方法。请注意,我不希望以任何方式更改页面的当前状态,只需触发文件下载而不影响页面即可。如果不下载文件则显示错误。

【问题讨论】:

    标签: javascript jquery html download


    【解决方案1】:

    您不能仅使用 html 来做到这一点,因为它是一种静态语言。我建议您使用用 php 或 java 编写的“if/else”子句。这里有一些documentation 和一个具体示例here。无论如何,您是一个完全适合您的案例的示例(考虑到您在 html 上插入了 php)。

    <?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 } ?>
    

    【讨论】:

      【解决方案2】:

      我知道我回复得很晚,但它可能对面临此类问题的人有用。

      当使用同步 HTTP 调用时,很难显示错误消息,因为它会替换整个网页而不是我们不想要的。
      所以,最好使用 AJAX

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

      另外,请通过以下 SO 链接 Download a file by query Ajax

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-09-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-01-28
        • 2016-12-15
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多