09asp.net==============Request Response Server常用属性和方法。。

Request

1、Request.UrlReferrer 请求的来源,可以根据这个判断从百度搜的哪个关键词、防下载盗链、防图片盗链,可以伪造(比如迅雷)。"本图片仅供如鹏网内部交流使用",在DZ中测试。全局防盗链用Globals.asax
2、Request.UserHostAddress获得访问者的IP地址
3、Request.Cookies 获取浏览器发过来的浏览器端的Cookie,从它里面读取Cookie值,比如context.Request.Cookies["mysessionid"],使用Request.Cookies 的时候只是读取,将Cookie写回浏览器要用Response.Cookies
4、Request.MapPath(virtulPath)将虚拟路径转换为磁盘上的物理路径,Request.MapPath("~/a/b.aspx")就会得到D:\2008\WebSites\WebSite4\a\b.aspx

===========================================================================================================================
1、 (*) Request.AppRelativeCurrentExecutionFilePath,获取当前执行请求相对于应用根目录的虚拟路径,以~开头,比如“~/Handler.ashx”,
2、 (*) Request.PhysicalApplicationPath,获取当前应用的物理路径,比如D:\我的文档\Visual Studio 2008\WebSites\WebSite4\
3、 (*) Request.PhysicalPath,获取当前请求的物理路径,比如D:\我的文档\Visual Studio 2008\WebSites\WebSite4\Handler.ashx
4、 (*) Request.RawUrl获得原始请求URL、Request.Url获得请求的URL,区别涉及到URL重写的问题
5、 (*) Request.UserLanguages获得访问者浏览器支持的语言,可以通过这个实现对不同语言的人显示不同语言的页面

Response

响应的缓冲输出:为了提高服务器的性能,ASP.Net向浏览器Write的时候默认并不会每Write一次都会立即输出到浏览器,而是会缓存数据,到合适的时机或者响应结束才会将缓冲区中的数据一起发送到浏览器。
Response对象的主要成员:
1、Response.Buffer、Response.BufferOutput:经过Reflector反编译,发现两个属性是一样的,Buffer内部就是调用的BufferOutput。这个属性用来控制是否采用响应缓存,默认是true。
2、Response.Flush()将缓冲区中的数据发送给浏览器。这在需要将Write出来的内容立即输出到浏览器的场合非常适用。案例:大批量数据的导入,显示正在导入第*条数据,用Thread.Sleep模拟耗时。
3、Response.Clear()清空缓存区中的数据,这样在缓存区中的没有发送到浏览器端的数据被清空,不会被发送到浏览器。
4、Response.ContentEncoding输出流的编码。
5、Response.ContentType 输出流的内容类型,比如是html(text/html)还是普通文本(text/plain)还是JPEG图片(image/JPEG)
6、Response.Cookies 返回给浏览器的Cookie的集合,可以通过它设置Cookie
7、Response.OutputStream 输出流,在输出图片、Excel文件等非文本内容的时候要使用它
8、Response.End() 终止响应,将之前缓存中的数据发给浏览器,End()之后的代码不会被继续执行,End方法里调用了Flush()方法。在终止一些非法请求的时候,比如盗链等可以用End()立即终止请求。
9、Response.Redirect(url) 重定向浏览器到新的网址。即可以重定向到站外网址也可以重定向到站内网址。Response.Redirect("http://www.rupeng.com")、Response.Redirect("a.htm")。Redirect是向浏览器发回302重定向(还有一个Location告诉浏览器要重定向到哪个页面),是通知浏览器“请重新访问url这个网址”,这个过程经历了服务器通知浏览器“请重新访问url这个网址”和浏览器接到命令访问新网址的过程。使用HttpWatch查看整个响应过程的Http报文。用Redirect因为是浏览器自己去重新访问新网址的,所以在地址栏中是可以看到网址的变化的。后面会用来防止刷新浏览器时提示“重试”。
10、Response.SetCookie(HttpCookie cookie),向输出流中更新写到浏览器中的Cookie,如果Cookie存在就更新不存在就增加。是对Response.Cookies的简化调用。
11、Response.Write()向浏览器输出内容。

:Server属性

1、 Server.MapPath() 获得文件的物理路径 <===> Request.MapPath();
2、 Server.Execute("Child.aspx");执行另外一个页面的内容
<iframe src="Child.aspx" frameborder="0"></iframe>:执行另外一个页面的内容===不建议使用,搜索的时候不能给搜索到

Transfer("Child.aspx") 内部跳转:在服务器端进行跳转,没有向浏览器返回任何的信息,所以地址栏中的地址还是原来的地址。 注意的是与Response.Redirect的区别

3、Server.HtmlEncode("<span style=‘color:red‘>sadsfjasdklfas</span>"):实质是对HTML的进行编码(将尖括号转成大于号与小于号,可以防止跨站脚本攻击(XSS))。要带网页上输入一段代码格式。。
Server.HtmlDecode():对上面编码的内容进行解码。。

4、Server.UrlEncode():如果通过地址栏传递一些特殊符号(或者中午)有可能会出现乱码,需要用该方法编码一下。
Server.UrlDecode():对上面的编码进行解码。。处理超链接中的一些问题。。

时间: 2024-10-05 05:02:03

09asp.net==============Request Response Server常用属性和方法。。的相关文章

UIWebView浏览器控件常用属性与方法汇总

一.什么是UIWebView UIWebView是iOS内置的浏览器控件 系统自带的Safari浏览器就是通过UIWebView实现的 二.UIWebView常用属性和方法 UIWebView常用的加载资源的方法 - (void)loadRequest:(NSURLRequest *)request; @property(nonatomic) UIDataDetectorTypes dataDetectorTypes; // 需要进行检测的数据类型 @property(nonatomic,rea

SVG DOM常用属性和方法介绍

将以Adobe SVG Viewer提供的属性和方法为准,因为不同解析器对JavaScript以及相关的属性和方法支持的程度不同,有些方法和属性是某个解析器所特有的.SVG支持DOM2标准. 12.2.1  文档初始化相关 evt属性 evt表示事件本身,可以通过evt获取与当前事件相关的信息,用户可以在script中定义响应函数,进行相应的处理.它与普通JavaScript脚本中的event基本相同,只不过在普通JavaScript的脚本中简写成“e”. ownerDocument属性 通过引

iPone应用开发 UIView 常用属性和方法

iPone应用程序开发 UIView常用属性和方法 常用属性 alpha 视图的透明度0.0f - 1.0f backgroundColor 视图的背景颜色 subviews 子视图的集合 hidden 视图是否隐藏 tag 视图的唯一标示符,是一个整形数据 superview 视图的父视图 multipleTouchEnabled 是否开启多点触控 userInteractionEnable 是否响应触摸事件 常用方法 - (void)removeFromSuperview; //从父视图中删

ExtJs window(一)使用API以及window常用属性和方法

1.使用API xtype:组件的别名 Hierarchy 层次结构 Inherited mixins 混入的类 Requires 该组件需要使用的类 configs:组件的配置信息 properties:组件的属性 methods:组件的方法 events:组件的事件 2.window组件常用属性和方法讲解: configs: constrain:布尔值,true为限制窗口只能在其容器内移动,默认值为false,允许窗口在任何位置移动.(另:constrianHeader属性) modal:布

UIView常用属性与方法/UIKit继承结构

UIView常用属性与方法 @interface UIView : UIResponder<NSCoding, UIAppearance, UIAppearanceContainer, UIDynamicItem> /** * 通过一个frame来初始化一个UI控件 */ - (id)initWithFrame:(CGRect)frame; // YES:能够跟用户进行交互 @property(nonatomic,getter=isUserInteractionEnabled) BOOL us

SQL Server 常用命令使用方法

(1) 数据记录筛选: sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]" sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]" sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]" sql="select * from 数据表

Node.js process 模块常用属性和方法

Node.js是常用的Javascript运行环境,本文和大家发分享的主要是Node.js中process 模块的常用属性和方法,希望通过本文的分享,对大家学习Node.js http://www.maiziedu.com/course/694/有所帮助. 如果不是和命令行工具打交道,可能我们很少有机会去用到process模块中的一些方法或者属性.不过如果你要做类似于webpack或者gulp等较为复杂的构建工具,由于bash界面就是和用户直接交流的工具,因此友好的输入输出,完整的提示都非常有必

js数组对象以及数组常用属性和方法

定义形式: var  arr1 = new Array(1,  5,  8,  7,  2,  10);  //定义了一个数组,其中具有6个数据 var  arr2 = new Array();                   //只是单纯地定义了一个数组(名),但没有给值(数据),即现在是空的 var  arr3 = [1,  5,  8,  7,  2,  10];  //同arr1,只是一种简写的定义法. var  arr4 = [ ];                  //同arr

js字符串常用属性和方法

字符串声明: var str1 = new String(“abcdefgabc”);      //这是一个“字符串对象” var str2 = “abcdefgabc”;                            //这个字符串跟前面str1几乎没有区别 str.length——获得一个字符串的长度(也就是字符个数) 字符串对象的方法: str1.charAt( n );       ——获得字符串str1中位置为n的那个字符(字符的位置也是从0开始算起)var s1 = str