asp.net学习——Response对象
(2011-03-29 07:33:03)
- 响应的缓冲输出:为了提高服务器的性能,asp.net向浏览器Write的时候默认并不会每Write一次都会立即输出到浏览器,而是会缓存数据,到合适的时机或者响应结束才会将缓冲区中的数据一起发送到浏览器。
- Response对象的主要成员:
- Response.Buffer、Response.BufferOutput:两个的属性是一样的,Buffer内部就是调用BufferOutput。用来控制是否采用响应缓存,默认是true。
- Response.Flush()将缓冲区中的数据发送给浏览器。这在需要将Write出来的内容立即输出到浏览器的场合非常适用。
- Response.Clear()清空缓冲器中的数据,这样在缓存区中的没有发送到浏览器端的数据被清空,不会被发送到浏览器。
- Response.ContentEncoding输出流的编码。
- Response.ContentType输出流的内容类型,比如html(text/html) 、普通文本(text/pain)还是JPEG图片(image/JPEG)。
- Response.Cookies返回给浏览器的Cookie的集合,可以通过它设置Cookie
- Response.OutputStream输出流,在输出图片、Excel文件等非文本内容的时候使用它。(ashx中保存图片就用这个)
- Response.End()终止响应,将之前缓存中的数据发给浏览器,End()之后的代码不会被继续执行。在终止一些非法请求的时候,可以用End()立即终止请求。(不往下执行了)
- Response.Redirect(url)重定向浏览器到新的网址。即可以重定向到站外网址也可以重定向到站内网址。Redirect是向浏览器发回302重定向,是通知浏览器“请重新访问url这个网址”,这个过程经历了服务器知浏览器“请重新访问url这个网址”和浏览器接到命令访问新网址的过程。用Redirect因为是浏览器自己去访问新网址的,所以在地址栏中是可以看到网址的变化的。 后面用这个来防止刷新时浏览器提示“重试”。
- Response.SetCookie(HttpCookie cookie),向输出流中更新写到浏览器中的Cookie,如果Cookie存在就更新不存在就增加。是对Response.Cookies的简化调用。
- Response.Write()向浏览器输出内容。
- Response.WriteFile(filename)向浏览器输出文件。
Response.Flush例子:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace asp.net入门2
{
/// <summary>
/// Flush练习 的摘要说明
/// </summary>
public class Flush练习 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/html";
for (int i = 0; i < 25; i++)
{
System.Threading.Thread.Sleep(500);//模拟处理所需的时间,延迟
context.Response.Write("第"+i+"步执行完毕 <br />");
context.Response.Flush();//没有这步的话,要等全部都缓冲好,再发送出来,有了这步是一条一条输出
}
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
Response.Redirect例子:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace asp.net入门2
{
public partial class Redirect练习 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string q = Request["q"];
if (q == "1")
{
Response.Write("你传的是1");
}
else if (string.IsNullOrEmpty(q))
{
Response.Write("什么都没有");
}
else
{
Response.Redirect("~/image/资料.jpg");
}
}
}
}
重定向:
asp.net学习——Response对象的更多相关文章
- asp.net中Response对象鱼Request对象
在asp.net中Response与Request对象是两个常用的对象,虽然他们长得有点像,但是作用却是截然不同,我们来看一下他们他们都有哪些不同. 一.Response对象主要作用:像浏览器输出信息 ...
- 初识 Asp.Net内置对象之Response对象
Response对象 Respose对象用于将数据从服务器发送回浏览器.它允许将数据作为请求的结果发送到浏览器,并提供有光响应的信息,可以用来在页面中输入数据,在页面中跳转,还可以传递各个页面的参数, ...
- ASP入门(六)-Response对象
Response对象可以从服务器向用户发送输出的结果. Response几种常用方法 方法 描述 BinaryWrite 向浏览器输出二进制的内容 Clear 清除已经缓冲的HTML输出 End 停止 ...
- ASP.NET的内置对象 —— Response 对象
在 ASP.NET 中,页面实际上是一个输出 HTML 的可执行对象. 传统的 ASP 程序通常将 ASP 代码和 HTML 标签集成在一个文件中,或者将其分离于多个文 件. 当执行文件时,服务器回从 ...
- ASP.NET之Request和Response对象
经过了牛腩新闻公布系统和html的学习对B/S开发的流程有了些理解.前面尽管用到了非常多知识.但对制作网页仅仅能说知其然.当学到asp.net视频中的解说才干够说開始知其所以然了. 今天来说说clie ...
- ASP.NET(一):Reques对象和Response对象的区别,以及IsPostBack属性的用法
导读:在ASP.NET的学习中,初步认识了其6大对象(严格说来只能算是属性):Request,Response,Application,Session,Server,OjectContext.这些对象 ...
- javaweb学习总结二十五(response对象的用法一)
一:Reponse对象的概念 当客户端发送http请求时,服务器端会对每一次请求,创建request对象和response对象. response对象包括三个部分:响应头.响应状态码以及响应体 二:r ...
- asp.net学习之GridView事件、GridViewRow对象
原文:asp.net学习之GridView事件.GridViewRow对象 1. GridView控件的事件 GridView有很多事件,事件可以定制控件的外观或者行为.事件分为三类 1.1 ...
- ASP: Response 对象 错误 'ASP 0251 : 80004005' 解决办法
Response 对象 错误 'ASP 0251 : 80004005' 超过响应缓冲区限制 这种情况一般是因为需要输出的网页内容太大了,由于asp在输入内容到客户的浏览器上之前,会把需要输出的全部内 ...
随机推荐
- centos7不小心删除了/etc/yum.repos.d/CentOS-Base.repo文件..........
一步小心使用rm -rf /etc/yum.repos.d/CentOS-Base.repo 删除了base.repo文件,导致使用yum安装时报错. 解决如下,使用阿里云的镜像: wget -O / ...
- 内存管理cpuset,mempolicy[原理]
介绍cpuset,mbind,set_mempolicy在内存管理上的应用 change log :确定先从mempolicy的man 手册翻译开始研究,计划如下 .先从man手册入手,通过实现mem ...
- Xamarin.Android 使用ListView绑定数据
使用ListView进行数据绑定 第一步:新建一个类,用于存储显示字段. namespace ListViewDataBIndDemo { public class Person { public i ...
- Studying
美团spark实践:http://tech.meituan.com/spark-in-meituan.html CDH5.6.0-HBase1.0.0:http://archive.cloudera. ...
- eclipse导入Tomcat8源码
最近这段时间在学习how tomcat works这本书,需要结合书上的例子对照tomcat源码来看,需要导入tomcat的源码,所以在网上找了很多教程,结合自己遇到的问题,记录如下: 1.前期准备 ...
- Spring Cloud Consul使用——服务注册与发现(注册中心)
整理自该文章 一.Consul 服务端接下来我们开发 Consul 的服务端,创建一个 spring-cloud-consul-producer 项目 1.添加依赖包 <dependencies ...
- Nexus安装、使用说明 (转)
1. 为什么使用Nexus 如果没有私服,我们所需的所有构件都需要通过maven的中央仓库和第三方的Maven仓库下载到本地,而一个团队中的所有人都重复的从maven仓库下 载构件无疑加大了仓库的负载 ...
- docker私有仓库-https+nginx
一.概述 使用的是registry-2.4版本,因为在这个版本开始提供了garbage-collect,能够清理掉blobs,2.1开始提供了api的删除功能,但是只是删除的index并没有释放掉磁盘 ...
- idea 中解决maven 包冲突的问题(maven helper)
转:链接 一.冲突问题 比如项目中引用了两个 fastjson.jar的版本,分别为 fastjson:1.2.28fastjson:1.2.3 我们用到了1.2.28中的某个类, 比如 A类,在版本 ...
- vue router history模式开发ngnix配置
一.前沿 现在很多用vue-router开发页面的时候,都习惯使用hash路由莫模式,如:https://xxxx/#/index/share?code=dsfsd.这种模式在做pc端开发时候挺好用的 ...