Chrome v.29 ブラウザーでファイルのダウンロードに関する問題が発生し始めました。ユーザーはファイルをダウンロードするように求められません。
以下のコードを参照してください。
context.Response.Clear();
context.Response.ClearHeaders();
context.Response.ClearContent();
context.Response.AddHeader("Content-Disposition", "attachment; filename=Test.txt");
context.Response.CacheControl = "private";
context.Response.ContentType = "text/plain";
byte[] data = new byte[Encoding.UTF8.GetByteCount("Test")];
data = Encoding.UTF8.GetBytes("Test");
context.Response.AppendHeader("Content-Length", data.Length.ToString());
context.Response.ContentEncoding = Encoding.UTF8;
context.Response.BinaryWrite(data);
context.Response.Flush();
context.Response.End();
http ヘッダー/本文:
HTTP/1.1 200 OK
Date: Thu, 29 Aug 2013 21:47:44 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Content-Disposition: attachment; filename=Test.txt
Content-Length: 4
Cache-Control: private
Content-Type: text/plain
Test
Chrome 以外のすべてのブラウザで同じコードが機能します。そして、バージョン 29 がリリースされるまで、Chrome で動作していました!!!