1

我观察到在某些情况下,Web 浏览器会导航到空白页面,然后提示用户下载文件。在我目前的情况下,它正在导航到生成 Excel 文件的 URL。该文件的下载工作完美,但用户现在被困在一个空白页面上。我想弄清楚两件事:

  1. 什么原因导致显示空白页?它不会一直发生。这是使用 GET 和 POST 之间的区别吗(我不记得看到超链接这样做,但表单通常这样做)?它与内容处置有关吗?在我目前的情况下,我将 Content-Disposition 设置为“内联”,因为我希望它显示在 IE 的浏览器中。Firefox(可能还有其他)当然会提示下载,因为它们无法内联显示。用户选择保存它的情况是出现空白屏幕。
  2. 如果可能的话,我想在这个空白屏幕上显示一些内容,以向用户提供诸如“您的文件已生成,单击此处返回主屏幕”之类的消息。有没有办法我可以做到这一点?

我正在使用用 C++ 编写的 IIS 扩展,因此 ASP、PHP 等的解决方案将无济于事,除非它们普遍适用(尽管我不介意学习这些语言的解决方案!)。谢谢。

4

1 回答 1

1

我认为您实际上回答了您自己的问题:将 content-disposition 设置为 inline 就是这样做的。想到的一种解决方案是浏览器检测:如果浏览器是 IE,则使用内联配置,否则使用附件。

顺便说一句,作为用户,我更喜欢那些让我可以选择是下载文件还是在浏览器中查看文件的网站(例如,访问 PDF 文件时)。在这种情况下,我会考虑使用一个链接/按钮来下载文件,并为 IE 浏览器添加第二个链接/按钮来查看它。

于 2009-02-04T08:58:13.817 回答