handle() public method

public handle ( Psr\Http\Message\ServerRequestInterface $request ) : JsonResponse | EmptyResponse
$request Psr\Http\Message\ServerRequestInterface
return Zend\Diactoros\Response\JsonResponse | Zend\Diactoros\Response\EmptyResponse
 /**
  * {@inheritdoc}
  */
 public function __invoke(Request $request, Response $response, callable $out = null)
 {
     try {
         $this->assertAdminAndSudo($request);
     } catch (Exception $e) {
         if ($request->getMethod() === 'POST') {
             $response = $this->logInController->handle($request);
             if ($response->getStatusCode() === 200) {
                 return $response->withStatus(302)->withHeader('location', app('Flarum\\Admin\\UrlGenerator')->toRoute('index'));
             }
         }
         return new HtmlResponse($this->view->make('flarum.admin::login')->with('token', $request->getAttribute('session')->get('csrf_token'))->render());
     }
     return $out ? $out($request, $response) : $response;
 }