/** * @param $request * @param $response * @return mixed */ public function dispatching(Swoole\Request $request, Swoole\Response $response) { if (defined('ROUTE') && ROUTE) { $uri = $request->getRequestTarget(); $router = Route::parse_routes($uri); if ($router) { $_controllerName = array_shift($router); $_actionName = array_shift($router); } else { $_controllerName = $request->get(self::_dCTL) ?: getini('site/defaultController'); $_actionName = $request->get(self::_dACT) ?: getini('site/defaultAction'); } } else { $_controllerName = $request->get(self::_dCTL) ?: getini('site/defaultController'); $_actionName = $request->get(self::_dACT) ?: getini('site/defaultAction'); } $controllerName = preg_replace('/[^a-z0-9_]+/i', '', $_controllerName); $actionName = preg_replace('/[^a-z0-9_]+/i', '', $_actionName); if (defined('AUTH') && AUTH) { $allow = Rbac::check($controllerName, $actionName, AUTH); if (!$allow) { $this->response(' 你没有权限访问 ' . $controllerName . ' - ' . $actionName, 500, $response); return false; } } return $this->execute($controllerName, $actionName, $request, $response); }