而封闭HTTP输出信息的类型就是HttpResponse类,使用HttpResponse类可以实现三种类型的输出,即文本,URL,二进制流.
  实现这三类的属性和方法分别介绍如下:
1.文本的输出,在日常开发中,后台中的文本可能需要输出到浏览器中,让用户浏览,这就需要实现动态HTML的输出,使用HttpResponse类的Write静态方法可以实现,例如希望在浏览器上显示一个"hello world!"的字样时,可以在Page_load方法中增加如下代码,就可以实现:

 Response.write("hello world!")

2.URL的输出,程序开发经常需要根据情况将用户浏览的界面重定向到其他页面,例如,用户在没有登录的状态下查看自己的信息,系统需要首先将其转向到登录页,登录后再转回信息浏览页,实现URL的输出可以使用HttpResponse类的redirect方法实现,代码如下:

response.redirect("http://www.djjwz.com/")

3.二进制流,有时需要将服务器上的文件提供给用户下载,或者在浏览器端动态生成一幅图片,例如,验证的初一二进制流输出到用户浏览器中.

https://msdn.microsoft.com/zh-cn/library/system.web.httpresponse(v=vs.110).aspx

封装来自 ASP.NET 操作的 HTTP 响应信息

已用到的方法:

Redirect(String)

将请求重定向到新 URL 并指定该新 URL。

Redirect(String, Boolean)

将客户端重定向到新的 URL。指定新的 URL 并指定当前页的执行是否应终止。

RedirectPermanent(String)

执行从所请求 URL 到所指定 URL 的永久重定向。

RedirectPermanent(String, Boolean)

执行从所请求 URL 到所指定 URL 的永久重定向,并提供用于完成响应的选项。

RedirectToRoute(Object)

使用路由参数值将请求重定向到新 URL。

RedirectToRoute(RouteValueDictionary)

使用路由参数值将请求重定向到新 URL。

RedirectToRoute(String)

使用路由名称将请求重定向到新 URL。

RedirectToRoute(String, Object)

使用路由参数值和路由名称将请求重定向到新 URL。

RedirectToRoute(String, RouteValueDictionary)

使用路由参数值和路由名称将请求重定向到新 URL。

RedirectToRoutePermanent(Object)

使用路由参数值执行从所请求 URL 到新 URL 的永久重定向。

RedirectToRoutePermanent(RouteValueDictionary)

使用路由参数值执行从所请求 URL 到新 URL 的永久重定向。

RedirectToRoutePermanent(String)

使用路由名称执行从所请求 URL 到新 URL 的永久重定向。

RedirectToRoutePermanent(String, Object)

使用路由参数值以及与新 URL 对应的路由的名称执行从所请求 URL 到新 URL 的永久重定向。

RedirectToRoutePermanent(String, RouteValueDictionary)

使用路由参数值和路由名称执行从所请求 URL 到新 URL 的永久重定向。

ToString()

返回表示当前对象的字符串。(从 Object 继承。)

TransmitFile(String)

将指定的文件直接写入 HTTP 响应输出流,而不在内存中缓冲该文件。

TransmitFile(String, Int64, Int64)

将文件的指定部分直接写入 HTTP 响应输出流,而不在内存中缓冲它。

Write(Char)

将字符写入 HTTP 响应输出流。

Write(Char[], Int32, Int32)

将字符数组写入 HTTP 响应输出流。

Write(Object)

将 Object 写入 HTTP 响应流。

Write(String)

将字符串写入 HTTP 响应输出流。

WriteFile(IntPtr, Int64, Int64)

将指定的文件直接写入 HTTP 响应输出流。

WriteFile(String)

将指定文件的内容作为文件块直接写入 HTTP 响应输出流。

WriteFile(String, Boolean)

将指定文件的内容作为内存块直接写入 HTTP 响应输出流。

WriteFile(String, Int64, Int64)

将指定的文件直接写入 HTTP 响应输出流。

WriteSubstitution(HttpResponseSubstitutionCallback)

允许将响应替换块插入响应,从而允许为缓存的输出响应动态生成指定的响应区域。

代码示例:

<%@ Page Language="C#" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server"> private void Page_Load(object sender, EventArgs e)
{
// <snippet2>
// Set the page's content type to JPEG files
// and clears all content output from the buffer stream.
Response.ContentType = "image/jpeg";
Response.Clear(); // Buffer response so that page is sent
// after processing is complete.
Response.BufferOutput = true;
// </snippet2> // Create a font style.
Font rectangleFont = new Font(
"Arial", , FontStyle.Bold); // Create integer variables.
int height = ;
int width = ; // Create a random number generator and create
// variable values based on it.
Random r = new Random();
int x = r.Next();
int a = r.Next();
int x1 = r.Next(); // Create a bitmap and use it to create a
// Graphics object.
Bitmap bmp = new Bitmap(
width, height, PixelFormat.Format24bppRgb);
Graphics g = Graphics.FromImage(bmp); g.SmoothingMode = SmoothingMode.AntiAlias;
g.Clear(Color.LightGray); // Use the Graphics object to draw three rectangles.
g.DrawRectangle(Pens.White, , , width-, height-);
g.DrawRectangle(Pens.Aquamarine, , , width-, height-);
g.DrawRectangle(Pens.Black, , , width, height); // Use the Graphics object to write a string
// on the rectangles.
g.DrawString(
"ASP.NET Samples", rectangleFont,
SystemBrushes.WindowText, new PointF(, )); // Apply color to two of the rectangles.
g.FillRectangle(
new SolidBrush(
Color.FromArgb(a, , , )),
x, , , ); g.FillRectangle(
new LinearGradientBrush(
new Point(x, ),
new Point(x1 + , + ),
Color.FromArgb(, , , ),
Color.FromArgb(, , , )),
x1, , , ); // <snippet3>
// Save the bitmap to the response stream and
// convert it to JPEG format.
bmp.Save(Response.OutputStream, ImageFormat.Jpeg); // Release memory used by the Graphics object
// and the bitmap.
g.Dispose();
bmp.Dispose(); // Send the output to the client.
Response.Flush();
// </snippet3>
} </script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
</form>
</body>
</html>

HttpResponse 类的更多相关文章

  1. ASP.NET -- WebForm -- HttpResponse 类的方法和属性

    ASP.NET -- WebForm -- HttpResponse 类的方法和属性 1. HttpResponse 类的方法 (1) AddCacheDependency: 将一组缓存依赖项与响应关 ...

  2. C# 之 HttpResponse 类

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

  3. (5)ASP.NET HttpResponse 类

    HttpResponse 类用来封装来自 ASP.NET 操作的 HTTP 响应信息 https://msdn.microsoft.com/zh-cn/library/system.web.httpr ...

  4. .net学习笔记---HttpResponse类

      HttpReponse是服务器接收到浏览器的请求后,处理返回结果常用的一个类. 一.属性 Buffer 获取或设置一个值,该值指示是否缓冲输出并在处理完整个响应之后发送它. BufferOutpu ...

  5. HttpResponse类

    HttpReponse是服务器接收到浏览器的请求后,处理返回结果常用的一个类. 一.属性 Buffer 获取或设置一个值,该值指示是否缓冲输出并在处理完整个响应之后发送它. BufferOutput ...

  6. Django——20141014深入理解Django HttpRequest HttpResponse的类和实例

    深入理解Django HttpRequest HttpResponse的类和实例 了解META选项 了解中间件 理清所有模板传输模板变量的方式,并作出选择 Django模板系统:如何利用Django模 ...

  7. java http工具类和HttpUrlConnection上传文件分析

    利用java中的HttpUrlConnection上传文件,我们其实只要知道Http协议上传文件的标准格式.那么就可以用任何一门语言来模拟浏览器上传文件.下面有几篇文章从http协议入手介绍了java ...

  8. HttpResponse的使用方法

    HttpResponse的使用方法: HttpRequest类是一个封闭HTTP提交信息的类型,而封闭HTTP输出信息的类型就是HttpResponse类,使用HttpResponse类可以实现三种类 ...

  9. 在android 6.0(API 23)中,Google已经移除了移除了Apache HttpClient相关的类

    推荐使用HttpUrlConnection,如果要继续使用需要Apache HttpClient,需要在eclipse下libs里添加org.apache.http.legacy.jar,androi ...

随机推荐

  1. Java学习记录-Lambda表达式示例

    List<Integer> userIds=userInfoList.stream().map(m->m.getUserId()).collect(Collectors.toList ...

  2. 深究AngularJS——自定义服务详解(factory、service、provider)

    前言 3种创建自定义服务的方式.  Factory Service Provider 大家应该知道,AngularJS是后台人员在工作之余发明的,他主要应用了后台早就存在的分层思想.所以我们得了解下分 ...

  3. Python-Select/Poll/Epoll使用

    select select最早于1983年出现在4.2BSD中,它通过一个select()系统调用来监视多个文件描述符的数组,当select()返回后,该数组中就绪的文件描述符便会被内核修改标志位,使 ...

  4. 使用celery之怎么让celery跑起来(转)

    原文:http://www.dongwm.com/archives/how-to-use-celery/ 前言 自从发了上次的文章使用celery之深入celery配置, 有一些网友再问我怎么让cel ...

  5. mysql主从复制(简单直观)

    mysql主从复制   mysql主从复制(超简单) 怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下: 1.主从服务器分别作以下操作:  1.1.版本一致  1.2.初始化表,并在后 ...

  6. django高级之点赞、文章评论及上传文件

    目录: 点赞 文章评论 上传文件 保留页面条件 一.点赞 1.所用技术: django model F查询 js应用:$(function () {}); 为文件加载完成执行ready() 方法.等同 ...

  7. 破解NET的四大神器(转)

    原文地址 原本这篇文章可以更早一星期写出来与大家分享,由于某方面的原因耽搁到现在,心里竟有那么一点好像对不住大家的感觉.这当然与神器有关,因为我发现利用这四大神器我似乎觉得几乎所有的NET程序破解都不 ...

  8. myeclips破解

    MyEclipse官方安装文件,下载地址 http://www.jb51.net/softs/150886.html破解补丁http://www.jb51.net/softs/150887.html ...

  9. Tomcat启动报错:StandardServer.await: create[8005] java.net.BindException: Cannot assign requested address

    Tomcat启动报错:StandardServer.await: create[8005] java.net.BindException: Cannot assign requested addres ...

  10. linux第五周

    第五周 给MenuOS增加time和time-asm命令 更新menu代码到最新版 在main函数中增加MenuConfig 增加对应的Time函数和TimeAsm函数 make rootfs 使用g ...