重定向解析

1、Response.Redirect();

     Response.Redirect(); 是可从服务器1到服务器2的,也就是在不同服务器之间转换。转向之后,浏览器中的地址栏中会显示新的网页的地址。

  

2、Server.Execute();只能本地服务器上的页面转换。说页面转换有些不严谨,准确的说应该是把Page2和跳转之前的页Page1按先后顺序写入缓冲区之后,一起输出的。此时会相当于在同一个页面先输出了Page2接着又在该页面输出了Page1.但是网页中的地址栏中显示的依然是上一个页面的地址。

  

3、Server.Transfer();只能本地服务器上的转换。与Server.Execute()一样虽然进行了页面跳转,但是网页地址栏中依旧显示的是上一个页面的地址。但是与上面的Server.Execute()不同的是该方法,只输出Page2的页面。

   记录:今晚一个朋友问了我一个问题:我们在所开发的OA项目中使用Session仅仅对登录后的第二个页面进行了Session检测,那么其他页面呢?如果用户直接输入其他页面的地址,不就可以直接访问其他页面的地址了吗?

    显然,我们是仅仅对登录后的OA操作页面进行了检测,对其他页面我们没有做Session检测。但是请注意,我们使用的跳转方式不是Response.Redirect(),而是Server.Transfer(),这样做的好处就是用户虽然进入了其他的OA操作页面,但是用户却无法看到该OA操作页面的地址,因为在地址栏中显示的依旧是登录后的OA页面的地址。所以用户直接输入其他页面的地址的可能性是极低的。

posted @ 2013-05-27 10:05  Big.Eagle  阅读(226)  评论(0编辑  收藏  举报