前言:
Request与Response那么他们都是什么呢?学习之前我也有这样的疑问,一起认识一下吧;
- Request 和 Response 对象起到了服务器与客户机之间的信息传递作用,Request 对象用于接收客户端浏览器提交的数据,而 Response 对象的功能则是将服务器端的数据发送到客户端浏览器
1、Request
- 是什么
简单来说就是服务器返回给浏览器的一些数据,用来获取用户提供的信息;
- 其他成员对象
1、Request.UrlReferrer //请求的来源
//应用
Response.Write(Request.Url.ToString());//获取当前请求的URL地址。
Response.Write("<hr/>");
2、Request.UserHostAddress //获得访问者的IP地址
Response.Write(Request.Url.ToString());//获取当前请求的URL地址。
Response.Write(Request.UserHostAddress);//获取访问者的IP
Response.Write("<hr/>");
效果图:
3、Request.Cookies //获取浏览器发过来的浏览器端的Cookie,从它里面读取Cookie值
//获取Cookie值,使用Request.Cookies 的时候只是读取,将Cookie写回浏览器要用Response.Cookies
Response.Write(Request.Cookies["cp2"].Value);
4、Request.MapPath(virtulPath) //将指定虚拟路径转换为磁盘上的物理路径
string filePath = context.Request.MapPath("Detail.html");
string fileContent = File.ReadAllText(filePath);
fileContent = fileContent.Replace("$name", userInfo.UserName).Replace("$pwd",userInfo.UserPass); ;
context.Response.Write(fileContent);
5、Request.QueryString //用以获取客户端附在url地址后的查询字符串中的信息
//用以获取客户端在表单中所输入的信息,(表单的method属性值需要为post)
context.Request.QueryString["id"]
6、Request.Form //用以获取客户端在from表单中所输入的信息
//表单的method属性值需要为post
int id = Convert.ToInt32(context.Request.Form["txtId"]);
userInfo.UserName = context.Request.Form["txtName"];
2、Response
- 是什么
用于动态响应客户端请示,控制发送给用户的信息,并将动态生成响应,简单来说就是用于从服务器向用户发送输出的结果;
- 其他成员对象
1、Response.Write //向客户端发送浏览器能够处理的各种数据,包括:html代码,脚本程序等
context.Response.Write("参数错误!!");
2、Response.redirect(“url”) //在服务器端重定向于另一个网页
context.Response.Redirect("Error.html");
3、Response.Clear //清除缓冲区所有内容
Response.Buffer //设置服务器端是否将页面先输出到缓冲区
Response.Flush //Buffer的值为True时,将缓冲区中的当前页面内容立刻输出到客户端
context.Response.Clear();//清除缓冲区的所有内容输出
Response.Buffer=True/False;
//应用
<%Response.Buffer=true%>
<html>
<body>
<p>当Response 缓存清空时,这段文本就会发送到浏览器</p>
<%Response.Flush%>//Buffer的值为True时,flush方法用于将缓冲区中的当前页面内容立刻输出到客户端
</body>
</html>
实践中应用;