0

 oResponse.AddHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName_DBText, Encoding.UTF8).Replace("+", "%20"));
 oResponse.AddHeader("Content-Disposition", "inline=" + HttpUtility.UrlEncode(fileName_DBText, Encoding.UTF8).Replace("+", "%20"));

以上仅导致我在 Chrome 中出现问题。在 IE 或 Firefox 中没有问题。删除第二个 AddHeader(添加 inline 指令),解决了这个问题。我的印象是添加两者都很好,浏览器会知道该怎么做。有人对此有明确的答案吗?

4

2 回答 2

2

a)不,你不能有多个。

b) 第二个的语法无效;“内联”不带参数。

c) “inline”和“attachment”是矛盾的;你想达到什么目的?

(规范是 RFC 6266,顺便说一句)

于 2016-04-12T16:00:12.650 回答
0

解决方案非常简单:只需删除以下代码行 -

oResponse.AddHeader("Content-Disposition", "inline=" + HttpUtility.UrlEncode(fileName_DBText, Encoding.UTF8).Replace("+", "%20"));

正如@Julian Reschike 所说,您不能拥有多个我不知道的内容处置标头。无论如何,上述行的语法是不正确的,因为我有它。删除线,一切恢复到应有的状态。

于 2016-04-13T09:42:41.753 回答