Request和Response对象产生的时机
Http请求→Request对象
Http响应→Response对象
Request与Response对象的本质
- Request对象其实是HttpRequest对象,在页面类中系统自动创建。
- Request对象封装了用户请求的信息(用户输入的信息或URL参数)。
- Response对象封装了服务器的响应信息。
Request对象
Request对象如何获取传递过来的数据?
- QueryString属性(查询字符串):获取通过URL路径传来的数据。
- Form属性(表单数据):获取通过表单传输的数据。
- ServerVariables:获取Web服务器变量的集合。
- Params属性:以上三种方式传输的内容都可以使用该属性获取。
- QueryString获取数据方式只限于Url的方式传递的值。
- 实际应用场景中更多的时候使用的是Params方式获取Request数据。
Response对象
Response
- 使用Response.Write在页面中输出时,内容会输出在页面顶部。
Response对象操作页面输出流
- Write方法:直接在页面上输出内容。(配合JQuery大量使用)。
例:Response.Write(“财富人生”); - Redirect方法:重定向到另一个页面(通过后台程序控制页面跳转)。
外部重定向:Response.Redirect(“Https://www.biying.com.cn”);
内部重定向:Response.Redirect(“Default.aspx”);
ServerVariables对象获取浏览器信息
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("目前浏览器版本为:");
Response.Write(Request.ServerVariables["HTTP_USER_AGENT"].ToString());
Response.Write("<br>目前浏览器语言为:");
Response.Write(Request.ServerVariables["HTTP_ACCEPT_LANGUAGE"].ToString());
}
ViewState的使用
- http请求是一种无状态的请求,web服务器无法记录下用户访问的状态信息等。
- 使用ViewState键值对方式读取数据,结合IspostBack判断出是否是回发。
- 使用ViewState存下用户访问的状态。
- ViewState无法跨页面交换数据。