这个问题有些含糊不清,很抱歉。
基本上,我正在使用Slim作为框架编写一个网站,但我注意到有两种不同(但常见)的重定向方式。使用$app->redirect()
和$app->response->redirect();
从我在文档中看到的内容中,除了$app->redirect()
将抛出异常(Slim将捕获)或在哪里使用之外,没有任何东西可以指示两者之间的区别。对该主题的研究仅揭示了$app->response->redirect()
应该在MiddleWare中使用,但没有其他信息。所以我的问题是你何时何地使用$app->response->redirect();
而不是$app->redirect()
,反之亦然。
答案 0 :(得分:2)
$app->redirect()
只是一个辅助函数。它会将您的电话委托给$app->response->redirect()
。
请参阅Github上的代码:
//Slim.php
public function redirect($url, $status = 302)
{
$this->response->redirect($url, $status);
$this->halt($status);
}