好吧,我有一个问题,但我认为它不是那么复杂,所以如果有人帮助我会很棒。 1)我有UserController扩展AbstractRestfulController,它工作正常。 2)然后我需要检查访问该控制器操作的权限。如果我使用" checkPermission"每个控制器中的方法都很好用,但我想在preDispatch事件中完成此方法。这里有一些问题: 我喜欢这个: 的 Module.php
public function onBootstrap(MvcEvent $e)
{
$em = $e->getApplication()->getEventManager();
$em->attach('dispatch', array($this, 'preDispatch'), +100);
}
我的方法" checkPermission"像这样检查(我认为没什么特别的):
if (!$this->isAllowed($role, $this->routeMatch->getParam('controller'), $this->routeMatch->getParam('action'))) {
所以问题:getParam(' action')返回null(这意味着,在preDispatch事件应用程序中,它不知道它需要执行什么操作)。我怎样才能让它像我想的那样工作?或者主要问题是: getParam(' action')什么时候可以返回值?仅在onDispatch事件中?
答案 0 :(得分:1)
因为它是一个宁静的api,它永远不会返回动作名称。添加应用ACL到Rest API不是一个好习惯。
使用Rest API身份验证HEADERS而不是ACL
refer this link
--SJ