我正在尝试构建一个Facebook
Auth适配器。
在其中,我需要抓住Request
对象来检索请求查询参数。
我在插件引导程序中添加了这个:
<?php
use lithium\action\Dispatcher;
use facebook\extensions\adapter\security\auth\Facebook;
Dispatcher::applyFilter('_callable', function($self, $params, $chain) {
//debug(compact('self', 'params', 'chain'));
Facebook::$request = $params['request'];
// Always make sure to keep the filter chain going.
$response = $chain->next($self, $params, $chain);
return $response;
});
然后我可以使用check()
访问我的Facebook类(例如self::$request
下)中的$ request。但似乎有点不对劲。
当我尝试重定向我的用户时,我无法看到我如何访问控制器&amp; lithium\action\Controller::redirect()
不是静态的。
我是这个过滤器的新手,有人可以告诉我这是正确的实现吗?
答案 0 :(得分:0)
最后很简单,我只是将$this->request
作为Auth :: check的参数传递,这样做了。