CakePHP 3:仅在从特定操作重定向时允许访问

时间:2015-11-08 09:39:06

标签: cakephp cakephp-3.0

早上好,我正在尝试仅在用户从其他控制器重定向时允许访问控制器。

if ($this->referer() != 
  Router::url(array(
    'controller'=>'customers', 'action'=>'register'
  ))) {
  return $this->redirect(['controller'=>'customers','action'=>'register']);
}

但上面的代码片段总是将我重定向到客户/注册。

我在CakePHP文档中找不到任何内容,所以如果有人对我有所了解?

1 个答案:

答案 0 :(得分:1)

$this->referer()会返回一个网址,例如http://foo.localhost/controller/action,而Router::url仅返回路线,例如/controller/action

因此你的情况不符合。