一、Request简介

Request对象是.net的内置对象之一,也是.net中常用的对象,用于获取客户端的信息,可以使用Request对象访问任何基于HTTP请求传递的所有信息。通过Request对象能够获得客户端发送给服务器的信息,不能将服务器端的数据发送给客户端的浏览器。

二、Request对象的作用

对于.net的内置对象之一Request,我将其在应用程序中所发挥的作用分为两种,第一种是通过Request对象,可以在服务器端获取当前访问该服务器的客户端(浏览器)的一些数据信息,第二种是在服务器端可以获取从html表单中用post或get方法传递的参数,当然也包括使用Ajax的post和get方法传递的参数。接下来我将结合实例对这两种作用进行一一概述。

通过Request,在服务器端获取客户端(浏览器)的数据信息

Request.UserHostAddress;       获取客户端的主机IP地址

Request.UserHostName;      获取客户端的DNS名称

Request.Url.Authority;       获取DNS主机名或IP和端口号            ------>localhost:4035

Request.RawUrl:           获取客户端请求的URL信息(不包括主机和端口)  ------>/a/Default2.aspx 
Request.ApplicationPath:      获取服务器上ASP.NET应用程序的虚拟路径。    ------>/ 
Request.CurrentExecutionFilePath: 获取当前请求的虚拟路径。            ------>/Default2.aspx 
Request.Path:            获取当前请求的虚拟路径。            ------>/Default2.aspx 
Request.PathInfo:          取具有URL扩展名的资源的附加路径信息      ------> Http://so.com/page.html/tail,则值为 /tail
Request.PhysicalPath:        获取与请求的URL相对应的物理文件系统路径。   ------>E:\temp\Default2.aspx

Request.Url :             获取完整url(协议名+域名+站点名+文件名+参数) ------>http://www.baidu.com/a/b?c=1

Request.Url.Host :         获取域名 (不包含端口)             ------>www.baidu.com

Request.Url.Query :         获取参数(从?开始)              ------> ?a=1&b=2
Request.Url.LocalPath:       站点名+文件名                 ------>/Default2.aspx 
Request.Url.AbsoluteUri:      获取基本url(不包含参数)            ------>http://localhost:8080/Default2.aspx 
Request.Url.AbsolutePath:     站点名+文件名                 ----->/Default2.aspx

在使用Request时需要注意的是,比如想在另一个类库中获取当前request的信息,那么就需要将该Request通过参数传递到该类库中的某一个方法中,接收该参数的类型需使用HttpRequestBase。

参考文章:

http://www.cnblogs.com/190196539/archive/2011/12/13/2286072.html

http://blog.csdn.net/nc_star/article/details/51741007

.Net的内置对象之一 Request的更多相关文章

  1. JSP内置对象之request

    书接上回,上次跟大家概括的说了说JSP的九种常用内置对象.接下来就该聊聊它们各自的特点了,今天先说说request吧. 下面是request的一些常用方法: isUserInRole(String r ...

  2. JSP最常用的五种内置对象(out,request,response,session,application)

    为了简化开发过程,JSP提供了一些内置对象,它们由容器实现和管理.开发者在JSP页面中无需声明,无需实例化就可使用.主要有out,request,response,session,applicatio ...

  3. 内置对象之request对象

    内置对象就是(容器)已经创建好的对象,可以被直接使用.当用户发送一个请求给容器,它就会自动创建一个对象来处理客户端发送来的消息,如request这个对象,可以获取到用户(客户端)发送来的信息.它的常见 ...

  4. 菜鸟学Java(五)——JSP内置对象之request

    书接上回,上次跟大家概括的说了说JSP的九种常用内置对象.接下来就该聊聊它们各自的特点了,今天先说说request吧. 下面是request的一些常用方法: isUserInRole(String r ...

  5. JAVA-JSP内置对象之request对象参数

    相关资料:<21天学通Java Web开发> request对象1.request对象不但可以用来设置和取得requset范围变量,还可以用来获得客户端请求参数请求的来源.表头.cooki ...

  6. JSP内置对象之request对象【学习笔记】

    request对象是JSP中重要的对象,每个request对象封装着一次用户的请求,并且所有的请求参数都被封装在request对象中,因此request对象是获取请求参数的重要途径. 一.获取请求头与 ...

  7. JSP 内置对象(request response session application out pageContext)

    request对象  javax.servlet.http.HttpServletRequest接口的实例 request.setCharacterEncoding("utf-8" ...

  8. Asp.net内置对象之Request对象(概述及应用)

    Request对象主要用于获取来自客户端的数据,如用户填入表单的数据.保存在客户端的Cookie等,本文将围绕Request对象,讲解其的主要作用:读取窗体变量.读取查询字符串变量.取得Web服务器端 ...

  9. ASP.NET内置对象之Request传递请求对象

    Request对象是HttpRequest类的一个实例,Request对象用于读取客户端在Web请求期间发送的HTTP值.Request对象常用的属性如下所示. q      QueryString: ...

随机推荐

  1. 关于Java数组

    今天,我们将要谈到的是Java里的数组 数组是一种容器,它是一些相同类型元素的集合.我们可以用数组,去存储一些相同类型的数据,比如,整数,浮点数,字符,...事实上,数组甚至可以用来存储同一个类的多个 ...

  2. PHP7 redis扩展安装

    1.安装redis (1)下载:https://github.com/phpredis/phpredis/tree/php7 或下载http://pan.baidu.com/s/1i5DFrjn用sa ...

  3. ZKUI中文编码以及以docker方式运行的问题

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  4. 浅谈CommandBehavior枚举的独特之处

    提供对查询结果和查询对数据库的影响 此枚举有一个 FlagsAttribute 属性,通过该属性可使其成员值按位组合. 命名空间:  System.Data程序集:  System.Data(在 Sy ...

  5. 带你使用h5开发移动端小游戏

    带你使用h5开发移动端小游戏 在JY1.x版本中,你要做一个pc端的小游戏,会非常的简单,包括说,你要在低版本的浏览器IE8中,也不会出现明显的卡顿现象,你只需要关心游戏的逻辑就行了,比较适合逻辑较为 ...

  6. CSS中Position 的用法详解。

    记得一年前,到一家公司面试的时候,问我position有哪几个属性,我憋半天才回答出2个,大家估计都清楚,就是我们经常用到的2个(relative,absolute). 最近又用到了好多,深入研究了下 ...

  7. maven:用appassembler-maven-plugin打包含有自定义目录的JAVA程序

    问题说明: 用maven构建了一个项目,目录结构如下: appassemblerd的配置: <plugin> <groupId>org.codehaus.mojo</gr ...

  8. Android 手机卫士--设置界面&功能列表界面跳转逻辑处理

    在<Android 手机卫士--md5加密过程>中已经实现了加密类,这里接着实现手机防盗功能 本文地址:http://www.cnblogs.com/wuyudong/p/5941959. ...

  9. Android 手机卫士--md5加密过程

    在之前的文章中,我们将用户的密码使用SharedPreferences存储,我们打开/data/data/com.wuyudong.mobilesafe/shared_prefs文件夹下的 confi ...

  10. Appfuse:起步

    在众多开源的Java开源CMS中探索了很久,终于选定了appfuse,理由如下: 1. 简洁:只搭建了框架,没有做多余的事 2. 完成了基本的用户管理:用户.角色.权限的定义很清晰 3. 符合预期的架 ...