protected function exec(Request $request, Response $response) { $route = $this->dispatch($request); $request->setRoute($route); $action = $this->createAction($route); // 中止继续访问 if ($request->abort == true) { return; } $request->callMiddleware(); $response->setPrefix($route->getPrefix()); $data = $this->runAction($action, $request, $response); if (!$data instanceof Response && $data !== null) { $response->with($data); } }