Server.Transfer仅是服务器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;
Response.Redirect则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地 址栏中可以看到跳转后的链接地址。
Server.Transfer是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把 这些内容再发给浏览器,浏览器根本不知道服务器发送的内容是从哪儿来的,所以它的地址栏中还是原来的 地址。这个过程中浏览器和Web服务器之间经过了一次交互。
Response.Redirect就是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,一般来说浏览器会 用刚才请求的所有参数重新请求。这个过程中浏览器和Web服务器之间经过了两次交互。
Server.Transfer不可以转向外部网站,而Response.Redirect可以。
Server.Execute效果和Server.Transfer类似,但是是把执行的结果嵌入当前页面。
页面跳转中Server.Transfer、Server.Execute和Response.Redirect的区别
最新推荐文章于 2020-07-09 21:46:11 发布