我在做cakephp 3.2
我必须将一个动作重定向到另一个动作以及一些数据。要传输的数据很大,变量也很敏感。
通过参数传递数据可以通过
实现return $this->redirect(['controller' => 'MyController', 'action' => 'myAction', $param]);
但这会将网址设为
/my-controller/my-action/param
我不想在网址中显示param
。
有没有办法做到这一点?
答案 0 :(得分:4)
有没有办法做到这一点?
您只需使用会话来存储数据。
E.g。在包含帖子数据的函数中:
$this->request->session()->write(
'my-stuff',
$this->request->data
);
$this->redirect('/somewhere/else');
在需要该数据的函数中,将其从会话中读出:
$myStuff = $this->request->session()->read('my-stuff');
if (!$myStuff) {
return $this->redirect('/start/point');
}
...