【发布时间】:2012-02-07 01:49:08
【问题描述】:
我正在使用以下 asp.net 代码流式传输 word 文档。
Response.Clear();
Response.ContentType = "application/vnd.ms-word";
Response.AddHeader("content-disposition", "attachment;filename=\"" + Letter.WordFileName.Replace(" ", "%20").Replace("&", "And") + "\"");
Response.BinaryWrite(Letter.WordDocument.ToMSWordDocument());
Response.End();
上周,我尝试在 ie8 中流式传输文件时开始收到以下消息
无法从 [服务器] 下载 [文件]
无法打开此 Internet 站点。请求的站点不可用或找不到。请稍后再试。
更新到 ie9 后我没有收到错误,但我的大多数用户仍在使用 ie8。我感觉这可能与 Windows 安全补丁有关,但我在 Google 搜索中没有找到类似的东西。
这里有更多信息:
- 该错误只发生在ie8中
- 我没有使用https来显示word文档
- 问题从上周开始出现。
- 该错误存在于 3 周未更新的系统上。
- 我在多台使用 ie8 的计算机上遇到此问题。
响应头
HTTP/1.1 200 正常 缓存控制:私有,无缓存 =“设置饼干” 内容类型:application/vnd.ms-word 服务器:Microsoft-IIS/7.5 设置Cookie:.ASPXAUTH = 74B339B8F7578C646C5ABEB1DD798B73409F51EBE28A1EE3CA0E9B16CDA93C1A3B81CA6A82ABABF940A3E828B5B1D7DE503940AD669CD435E28DE36848A706ECA2BF0CAAB408263DFA22166CB796FEAE27A96950DE37A70619C2F59D9C138F39749DC814D41F9839F3414AEDDA7A3A26F5DA92EFAF09BC8C965F61E02DB68B94D8D43C3201528B601896108B0A30B3CDEDF389F3C3D463E2163596186BFE6BADB83DB635193CDE01DA06E0CB3D0F9FAC1C392DA5E30052AD530B803FA92FD72EA7D768B5BB1505BA26B566AED1DCDE7E5423143803434F2C32572427CD6B68A49126E7084947CC52CE315FAC9A94DA1EE4BF765A0F4D2277679F41F6F19275B0067C6223517A959811A24B36C882F9F6D76B1C408B109DBA33991FDC79517A4E7B4C24DEC38E00FA2C7CFBA5566067017CBF34C71D2CC33605A621277C5E6D3E34F45529536140841A0B98720F7129CF49EDB4D3C61553865EE1A332B4273A674FED651FA7525ED6BF180A578B3C0BA0422C40B4C09663BFA3D6E4DD69171C4B2A558506E1B1AFA5788C37EEB8BB2052BA02C91DB14CA0DC5D12F56E62A3016982521480CA104DC3E7451CC92F89003BDE64378961CB8D40753D4031D1CB5A8B78BE6004B97E2128F8ABE584B7961CECF4983C54A48B5E0AB662ECAFF4E04E984C663EA2CBE4C2161F B1D074B06F297378BA15F36927870735833076BB2E43E60BE83E82EBB0138290A761803535BF0590C22F6AAC01397E67C5FE52A3AB5EBB;路径=/ 内容处置:附件;文件名="Septa%20Roberts%20Compound%2020111226[1].doc" X-AspNet-版本:4.0.30319 X-Powered-By: ASP.NET 日期:格林威治标准时间 2012 年 1 月 10 日星期二 16:07:51 内容长度:147456
【问题讨论】:
-
您是否尝试使用与将内容输出到响应流相同的代码在服务器上写入文件,然后尝试使用 IE8 下载创建的文件?这将是一个很好的起点,可以使用 Fiddler 来监视静态文件和动态下载脚本的 HTTP 请求。
-
在任何地方使用 Response.AddHeader “Cache-control”、“no-cache”?还有一些其他的想法可以尝试:answers.microsoft.com/en-us/ie/forum/ie8-windows_other/…
-
@brad 你能做一个测试,将文件名更改为一个没有括号和空格的简单文件名,看看它是否有效?
标签: asp.net internet-explorer-8 streaming