我从here看到了两种从控制器插件重定向的方法......我想知道哪种方式更有效率。我想知道在第二种方法,它可能更慢,因为响应是创建的?第一种方法会发生什么?它会立即重定向?
$request->setModuleName('default')
->setControllerName('search')
->setActionName('form')
->setDispatched(false);
或
$this->_response->setRedirect('redirecturl');
答案 0 :(得分:5)
第一种方法是应用程序重定向:您定义所请求的操作在另一个控制器中,因此使用相同的http请求来执行操作。
第二种方法是http重定向:http响应将具有http-location-redirect,因此客户端将触发第二个http请求以获得结果。
第一个肯定是效率最高的。
PS:你可以调用控制器的forward方法来发送另一个动作。