【问题标题】:How to respond to HTTP request with html AND attachment?如何使用 html AND 附件响应 HTTP 请求?
【发布时间】:2012-08-01 16:55:34
【问题描述】:

如何使用页面的 HTML 和附件响应 HTTP 请求?

例如,您导航到 /start_download

页面显示“感谢您下载!”

浏览器会提示另存为,而无需导航到其他地方。

我知道如何使用“Content-Disposition: attachment; filname=file.txt”,但我不知道是否可以在附件之前加载页面(即一个请求的混合响应)。

如果有帮助,我正在使用 Python 的 BaseHTTPRequestHandler。

P.S:其他网络服务器等不是一个选项,因为这是家庭作业规范。

【问题讨论】:

    标签: http attachment content-disposition


    【解决方案1】:

    如果您将这样的标签添加到“感谢页面”的标题中,那么浏览器会为您执行此操作。

    <meta http-equiv="Refresh" content="3;URL=_url_with_attachment_" />
    

    然后你让_url_with_attachment_ 提供下载。 3 是它到达您想要的位置之前的秒数。

    如果您真的想在标题中执行此操作而不影响提供的 HTML,那么您将提供

    Refresh: 3;URL=_url_with_attachment_
    

    【讨论】:

    • 谢谢,但我的问题是关于 HTTP 响应的结构。
    • 你在HTTP中是如何做到的。带标题。您可以将刷新作为标题发送,但这是现代的方式。查找“http 刷新标头”。
    • 您确定不能使用多部分 HTTP 响应来完成吗?
    • 这取决于您是否真的希望它在所有浏览器中都能正常工作。
    猜你喜欢
    • 1970-01-01
    • 2020-01-04
    • 2012-08-09
    • 2012-12-18
    • 2019-03-16
    • 2016-09-09
    • 2019-10-24
    • 2014-07-24
    相关资源
    最近更新 更多