不调用Response.Flush仍然在Response中发送Connection:Close

时间:2010-10-01 13:00:47

标签: c# asp.net http connection keep-alive

我的印象是不调用Response.Flush会确保不会返回Connection:Close。那么我该如何返回Connection:Keep-Alive?

我使用以下代码从ASP.NET返回文件。

Response.ContentType = type;
Response.AppendHeader("Content-Length", bytes.Length.ToString());
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetRevalidation(HttpCacheRevalidation.AllCaches);
Response.Cache.SetExpires(expiryDate);
Response.Cache.SetLastModifiedFromFileDependencies();
Response.Cache.SetETag(etag);
Response.OutputStream.Write(bytes, 0, bytes.Length);

这产生的响应是:

HTTP/1.1 200 OK
Server: ASP.NET Development Server/9.0.0.0
Date: Fri, 01 Oct 2010 12:50:17 GMT
X-AspNet-Version: 2.0.50727
X-AspNetMvc-Version: 2.0
Content-Length: 34808
Cache-Control: public, must-revalidate
Expires: Fri, 01 Oct 2010 12:51:17 GMT
Last-Modified: Wed, 22 Sep 2010 16:00:33 GMT
ETag: "302E7A7D0D9DA91BABB53F6B6FE0B005"
Content-Type: image/gif
Connection: Close

1 个答案:

答案 0 :(得分:1)

我不确定您是否可以发送连接:与开发服务器保持联系。

您可以通过浏览IIS管理器中的“HTTP响应标头”部分在IIS7中进行设置,然后单击右侧的“设置公共标题...”操作。