HttpResponse 类
而封闭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 类的更多相关文章
- ASP.NET -- WebForm -- HttpResponse 类的方法和属性
ASP.NET -- WebForm -- HttpResponse 类的方法和属性 1. HttpResponse 类的方法 (1) AddCacheDependency: 将一组缓存依赖项与响应关 ...
- C# 之 HttpResponse 类
Response 对象,派生自HttpResponse 类,该类封装来自 ASP.NET 操作的 HTTP 响应信息.存在于System.Web命名空间下. 注:MIME(Multipurpose I ...
- (5)ASP.NET HttpResponse 类
HttpResponse 类用来封装来自 ASP.NET 操作的 HTTP 响应信息 https://msdn.microsoft.com/zh-cn/library/system.web.httpr ...
- .net学习笔记---HttpResponse类
HttpReponse是服务器接收到浏览器的请求后,处理返回结果常用的一个类. 一.属性 Buffer 获取或设置一个值,该值指示是否缓冲输出并在处理完整个响应之后发送它. BufferOutpu ...
- HttpResponse类
HttpReponse是服务器接收到浏览器的请求后,处理返回结果常用的一个类. 一.属性 Buffer 获取或设置一个值,该值指示是否缓冲输出并在处理完整个响应之后发送它. BufferOutput ...
- Django——20141014深入理解Django HttpRequest HttpResponse的类和实例
深入理解Django HttpRequest HttpResponse的类和实例 了解META选项 了解中间件 理清所有模板传输模板变量的方式,并作出选择 Django模板系统:如何利用Django模 ...
- java http工具类和HttpUrlConnection上传文件分析
利用java中的HttpUrlConnection上传文件,我们其实只要知道Http协议上传文件的标准格式.那么就可以用任何一门语言来模拟浏览器上传文件.下面有几篇文章从http协议入手介绍了java ...
- HttpResponse的使用方法
HttpResponse的使用方法: HttpRequest类是一个封闭HTTP提交信息的类型,而封闭HTTP输出信息的类型就是HttpResponse类,使用HttpResponse类可以实现三种类 ...
- 在android 6.0(API 23)中,Google已经移除了移除了Apache HttpClient相关的类
推荐使用HttpUrlConnection,如果要继续使用需要Apache HttpClient,需要在eclipse下libs里添加org.apache.http.legacy.jar,androi ...
随机推荐
- 验证ip地址
package site.wangxin520.test; import sun.net.util.IPAddressUtil; public class Test { public static v ...
- Mirror--镜像相关操作
其他相关操作1. 关闭镜像--关闭镜像USE [master]GOALTER DATABASE Demo1 SET PARTNER OFFGO 2. 证服务器--移除见证服务器USE [master ...
- 模块讲解----hashlib模块(加密)
作用 用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法 语法 import hashlib #md5 ...
- 主从同步DNS(BIND)
看着别人搭建很简单,其实到自己做的时候需要考虑更多的问题. 1.环境 1)操作系统最好一样,配置一样 2)关闭防火墙,selinux,时间要同步(我就是用的纽约的时区,同步中国的时间,虽然时间是相同的 ...
- Could not load file or assembly 'Microsoft.Practices.EnterpriseLibrary.Common, Version=5.0.414.0, ...
使用oracle数据库一个多月依赖这问题一直都得不到解决,最近任务不是很忙了,所以决定把这问题解决掉.写一篇文章做记录. 以上错误主要是net程序oracle数据库使用了Microsoft Enter ...
- Java 和 Python 解析动态 key 的 JSON 数据
一.概述 解析JSON过程中,什么情况都可能遇到.遇到特殊的情况,不会怎么办?肯定不是设计的问题,一定是你的姿势不对. 有这样一种JSON需要解析: { "b3444533f6544&quo ...
- ng-深度学习-课程笔记-11: 卷积神经网络(Week1)
1 边缘检测( edage detection ) 下图是垂直边缘检测的例子,实际上就是用一个卷积核进行卷积的过程. 这个例子告诉我们,卷积可以完成垂直方向的边缘检测.同理卷积也可以完成水平方向的边缘 ...
- facebook graph api 报错SSLError(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661)')
使用facebook graph api,报错如下 一开始以为是https证书验证失败,查了一下午源码,没有看到问题,于是把Python27\lib\site-packages\requests\ad ...
- CentOS7搭建Gitlab详细过程
1.参见Gitlab官网说明 原文地址:https://about.gitlab.com/install/#centos-7 1.安装并配置必要的依赖项 在CentOS 7(和RedHat / O ...
- P1291 [SHOI2002]百事世界杯之旅(概率)
P1291 [SHOI2002]百事世界杯之旅 设$f(n,k)$表示共n个名字,剩下k个名字未收集到,还需购买饮料的平均次数 则有: $f(n,k)=\frac{n-k}{n}*f(n,k) + \ ...
