Thinkphp中 重定向redirect,和跳转success,error的区别

 我来答
rf...7@33sn.cc
2017-03-05 · 超过63用户采纳过TA的回答
知道答主
回答量:226
采纳率:0%
帮助的人:51万
展开全部
我们通过两个流程来看一下它们之间滑洞的区别。
Redirect
1. 用户浏览器向 发送 GET 请求。
2. JSF收到请求,返行举回 start.xhtml 页面。
3. 用户点击页面中的按钮。
4. JSF收到请求, 向浏览器发送 Redirect 指令 (3XX的HTTP状态值)。
5. 浏览器收到指令, 发送另一个 GET 到 。
6.JSF返回page1.xhtml。
7. 浏览器显示page1.xhtml。这时地址栏里显示的是page1.xhtml。

Forward
1. 用户浏览器向 发送 GET 请求。
2. JSF收到请求,返回 start.xhtml 页面。

3. 用户点击页面中的按钮。

4. JSF收到请求, 直接渲染page1.xhtml页面并返回给浏览器 。
5. 浏览器显示 page1.xhtml。这时候地址栏里显档让碧示的还是start.xhtml

由此可看出,重定向要比跳转多发送一个请求,所以相对要慢一些。JSF默认全部采用 Forward的方式跳转页面。如果想要重定向页面,可以在导航中添加 <redirect />,或者在 h:commandButton的action属性后添加 "faces-redirect=true":
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式