【问题标题】:ASP Response.AddHeader Content-Disposition not working for AcrobatASP Response.AddHeader Content-Disposition 不适用于 Acrobat
【发布时间】:2011-05-26 01:04:53
【问题描述】:

我有一个脚本,它生成一个临时 PDF 文件,将其二进制流传输到客户端,然后将其删除。

如果你点击浏览器文件菜单中的“页面另存为”,它想保存我通过Content-Disposition指定的正确文件名。

但是,如果您在 Acrobat 阅读器或 Acrobat Pro 中单击“保存”按钮,它希望保存脚本文件的名称,将“.asp”替换为“.pdf”。就像 Acrobat 完全忽略了“Content-Disposition”

重要的是我不使用静态 URL,而是使用动态脚本生成 PDF,这样我可以在关闭流时立即删除它。否则,我无法知道客户端何时完成下载。

有解决办法吗?我看过几个帖子,但都没有答案。

【问题讨论】:

    标签: pdf asp-classic


    【解决方案1】:

    您可以使用 URL 重写器将“静态”路径指向动态脚本。

    参见 this blog post 了解经典的 asp 重定向。

    所以,你可以有这样的链接:

    http://www.example.com/12_234_file.pdf
    

    重定向到:

    http://www.example.com/dynamic.asp?id=12&id2=234
    

    客户端会在重写之前看到 URL,并且应该使用它。

    【讨论】:

    • 问题是,我需要来自客户端表单的 GET 数据。没有别的办法吧?
    • @Dexter - 您可以使用 javascript 构建 GET 或使用重写进行服务器端重定向。
    • 太不幸了……这需要一些聪明才智。希望我在写剧本之前就知道这会发生。
    猜你喜欢
    • 2023-03-20
    • 2022-07-06
    • 1970-01-01
    • 1970-01-01
    • 2015-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多