C# 之 HttpResponse 类

      Response 对象,派生自HttpResponse 类,该类封装来自 ASP.NET 操作的 HTTP 响应信息。存在于System.Web命名空间下。

      注:MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。 

      (一)构造函数:public HttpResponse(TextWriter writer)
      (二)属性:

名称 用法 说明
Buffer Response.Buffer  = true

获取或设置一个值,该值指示是否缓冲输出并在处理完整个响应之后发送它。

(true or false)

BufferOutput Response.BufferOutput = true;

获取或设置一个值,该值指示是否缓冲输出并在处理完整个页之后发送它。

(true or false)

Cache  Response.Cache.SetExpires(DateTime.Now.AddSeconds(60));
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetValidUntilExpires(false);
Response.Cache.VaryByParams["Category"] = true;

if (Response.Cache.VaryByParams["Category"])
{
   //...
}
获取网页的缓存策略(例如:过期时间、保密性设置和变化条款)。
CacheControl   获取或设置与 HttpCacheability枚举值之一匹配的 Cache-Control HTTP 标头。
Charset Response.Charset == "iso-8859-2" 获取或设置输出流的 HTTP 字符集。
ClientDisconnectedToken   获取客户端断开时去除的 CancellationToken对象。
ContentEncoding Response.ContentEncoding.EncodingName 获取或设置输出流的 HTTP 字符集。
ContentType

Response.ContentType = "image/jpeg";  等同于

Response.AddHeader("content-type", "image/jpeg");

获取或设置输出流的 HTTP MIME 类型,来区分不同种类的数据。
Cookies HttpCookie MyCookie = new HttpCookie("LastVisit");
DateTime now = DateTime.Now;
MyCookie.Value = now.ToString();
MyCookie.Expires = now.AddHours(1);
Response.Cookies.Add(MyCookie);
获取响应 Cookie 集合。
Expires  

获取或设置在浏览器上缓存的页过期之前的分钟数。如果用户在页面过期之前返回到该页,则显示缓存的版本。提供 Expires是为了与 ASP 的早期版本兼容。

ExpiresAbsolute  

获取或设置从缓存中移除缓存信息的绝对日期和时间。

提供 ExpiresAbsolute是为了与 ASP 的早期版本兼容。

Filter  Response.Filter = new UpperCaseFilterStream(Response.Filter); 获取或设置一个包装筛选器对象,该对象用于在传输之前修改 HTTP 实体主体。
HeaderEncoding   获取或设置一个 Encoding象,该对象表示当前标头输出流的编码。
Headers   获取响应标头的集合。
IsClientConnected  Response.IsClientConnected 获取一个值,通过该值指示客户端是否仍连接在服务器上。(true or false)
IsRequestBeingRedirected   获取一个布尔值,该值指示客户端是否正在被传输到新的位置。
Output  if (IsPostBack)
{
     Server.HtmlEncode(txtSubmitString.Text, Response.Output);
}
启用到输出 HTTP 响应流的文本输出。
OutputStream  bmp.Save(Response.OutputStream, ImageFormat.Jpeg); 启用到输出 HTTP 内容主体的二进制输出。
RedirectLocation  Response.RedirectLocation = "http://www.newurl.com "; 获取或设置 Http Location 标头的值。
Status   设置返回到客户端的 Status 栏。
StatusCode  Response.StatusCode != 200 获取或设置返回给客户端的输出的 HTTP 状态代码。
StatusDescription  Response.StatusDescription != "OK" 获取或设置返回给客户端的输出的 HTTP 状态字符串。
SubStatusCode  context.Response.SubStatusCode = 99; 获取或设置一个限定响应的状态代码的值。
SupportsAsyncFlush   获取一个值,该值指示集合是否支持异步刷新操作。
SuppressContent  Response.SuppressContent = true; 获取或设置一个值,该值指示是否将 HTTP 内容发送到客户端。
SuppressFormsAuthenticationRedirect   获取或设置指定重定向至登录页的 forms 身份验证是否应取消的值。
TrySkipIisCustomErrors   获取或设置一个值,该值指定是否禁用 IIS 7.0 自定义错误。(true or false)

      (三)方法:   

名称 用法 说明
AddCacheDependency(params CacheDependency[] dependencies) CacheDependency authorsDependency = new CacheDependency("authors.xml");      
Response.AddCacheDependency(authorsDependency);
将一组缓存依赖项与响应关联,这样,如果响应存储在输出缓存中并且指定的依赖项发生变化,就可以使该响应失效。
AddCacheItemDependencies(ArrayList cacheKeys) ArrayList deps = new ArrayList();
deps.Add("bookData");
deps.Add("authorData");    
Response.AddCacheItemDependencies(deps);
使缓存响应的有效性依赖于缓存中的其他项。
AddCacheItemDependencies(string[] cacheKeys)   使缓存项的有效性依赖于缓存中的另一项。
AddCacheItemDependency(string cacheKey)

 Response.AddCacheItemDependency("bookData");

使缓存响应的有效性依赖于缓存中的其他项。
AddFileDependencies(ArrayList filenames)

ArrayList fileList = new ArrayList(); fileList.Add(file1); fileList.Add(file2);

Response.AddFileDependencies(fileList);

将一组文件名添加到文件名集合中,当前响应依赖于该集合。
AddFileDependencies(string[] filenames) String[] FileNames = new String[3];
FileNames[0] = "Test.txt";
FileNames[1] = "Test2.txt";
FileNames[2] = "Test3.txt";
Response.AddFileDependencies(FileNames);
将一个文件名数组添加到当前响应依赖的文件名集合中。
AddFileDependency(string filename) String FileName = "C:\\Files\\F1.txt";
Response.AddFileDependency(FileName);
将单个文件名添加到文件名集合中,当前响应依赖于该集合。
AddHeader(string name,string value)

Response.AddHeader("Content-Type","image/jpeg");  等同于

Response.ContentType = "image/jpeg";

将 HTTP 头添加到输出流。提供 AddHeader 是为了与 ASP 的早期版本兼容。
AppendCookie(HttpCookie cookie) HttpCookie MyCookie = new HttpCookie("LastVisit");
MyCookie.Value = DateTime.Now.ToString();
Response.AppendCookie(MyCookie);
基础结构。将一个 HTTP Cookie 添加到内部 Cookie 集合。
AppendHeader(string name, string value ) Response.AppendHeader("CustomAspNetHeader", "Value1"); 将 HTTP 头添加到输出流。
AppendToLog(stringparam) Response.AppendToLog("Page delivered"); 将自定义日志信息添加到 Internet 信息服务 (IIS) 日志文件。
ApplyAppPathModifier(string virtualPath) string urlConverted = Response.ApplyAppPathModifier("TestPage.aspx"); 如果会话使用 Cookieless 会话状态,则将该会话 ID 添加到虚拟路径中,并返回组合路径。如果不使用 Cookieless 会话状态,则 ApplyAppPathModifier 返回原始的虚拟路径。
BeginFlush(AsyncCallback callback,
Object state)
public IAsyncResult BeginFlush(AsyncCallback callback,
Object state)
向客户端发送当前所有缓冲的响应。
BinaryWrite(byte[] buffer) byte[] Buffer = new byte[(int)FileSize];
MyFileStream.Read(Buffer, 0, (int)FileSize);
MyFileStream.Close();
Response.Write("<b>File Contents: </b>");
Response.BinaryWrite(Buffer);
将一个二进制字符串写入 HTTP 输出流。
Clear() Response.Clear(); 清除缓冲区流中的所有内容输出。
ClearContent() Response.ClearContent(); 清除缓冲区流中的所有内容输出。
ClearHeaders() Response.ClearHeaders(); 清除缓冲区流中的所有头。
Close() Response.Close(); 关闭到客户端的套接字连接。
DisableKernelCache() public void DisableKernelCache() 禁用当前响应的
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值