这个问题有点模棱两可,很抱歉。
基本上,我正在写一个网站使用Slim作为框架,但我注意到有两种不同的(但常见的)重定向方式。使用$app->redirect()
和$app->response->redirect();
从我在文档中看到的,没有什么可以表明两者之间的区别,除了$app->redirect()
将抛出一个异常(Slim将捕获),或者在哪里使用。而对这一课题的研究只表明了在中间件中应该使用$app->response->redirect()
,而没有其他的信息。所以我的问题是,你应该在何时何地使用$app->response->redirect();
而不是$app->redirect()
,反之亦然。
$app->redirect()
只是一个辅助函数。它将您的呼叫委托给$app->response->redirect()
。
参见Github上的代码:
//Slim.php
public function redirect($url, $status = 302)
{
$this->response->redirect($url, $status);
$this->halt($status);
}