Response.Redirect(path)与Server.Transfer(path)的区别
//Response.Redirect(path)与Server.Transfer(path)的区别
//Server.Transfer("a.aspx")将用户请求重定向给a.aspx处理是服务器内部的接管
//浏览器是意识不到这个接管的,不会像Response.Redirect一样 通知浏览器访问
//指定url和浏览器接到命令重新访问的过程 Server.Transfer只有一次请求,服务器直接
//内部接管处理,而Response.Redirect需要2次请求
//因为是内部接管所以Server.Transfer转向的页面可以访问Response、Request、HttpCookie等这些原页面的参数
//而Response.Redirect则不行,因为Response.Redirect是一次新的请求
//Response.Redirect可以定向到外部网址,而Server.Transfer因为是内部接管定向,所以不可以专向外部网址
//Response.Redirect("http://www.baidu.com");正确,可以重定向到百度
//Server.Transfer("http://www.baidu.com");错误,因为是内部接管,直接转向,会报错

Response.Redirect不可以直接指向ashx页面,否则会报错“执行子请求出错”

浙公网安备 33010602011771号