1.问题提出
设计两个登录界面:一个register.asp页面用于输入账号,密码等信息进行登录。另一个页面welcome.asp用于显示登录成功的信息。利用request的两个对象response和server两种页面重定向方法进行响应。
2.实现过程
register.asp
server:
1 ?protected void Button1_Click(object sender, EventArgs e)2 ????????{3 ????????????Application["name"] = TextBox1.Text;4 ????????????Server.Transfer("welcome.aspx");5 ????????}
response:
public partial class regist : System.Web.UI.Page ???{ ???????protected void Page_Load(object sender, EventArgs e) ???????{ ???????????Application["name"] = null; ???????} ???????protected void Button1_Click(object sender, EventArgs e) ???????{ ???????????Application["name"] = TextBox1.Text; ??????????Response.Redirect("welcome.aspx"); ???????} ???}
登录页面,welcome.asp
1 public partial class welcome : System.Web.UI.Page2 ????{3 ????????protected void Page_Load(object sender, EventArgs e)4 ????????{5 ????????????string s = Application["name"].ToString();6 ????????????Response.Write("欢迎" + s + "登录该页面。");7 ????????}8 ????}
结果图片:
初始页面
登录页面
response:
初始页面:regist.asp
登录界面 welcome.asp
3.区别
从两次操作的结果来看,server直接是在当前页面出现了响应的结果值,但是response立即终止当前页面的执行,跳转到指定路径。
server的Transfer 方法把一个 ASP 文件中创建的所有状态信息(所有 application/session 变量以及所有 request 集合中的项目)发送(传输)到另一个 ASP 文件中。当第二个 ASP 完成任何时,它不会返回到第一个 ASP 页面。
Transfer 方法是 Response.Redirect 的一个高效的替代方案。当 Server.Transfer 方法在服务器上向另外的 ASP 页面传输执行时,重定向强制 Web 服务器处理额外的请求,避免了额外的周折。
【ASP】response和sever对象实现用户登录
原文地址:https://www.cnblogs.com/yitou13/p/10264611.html