// All options requests get a 200, then die if ($app->__get('request')->getMethod() == 'OPTIONS') { $app->response->setStatusCode(200, 'OK')->sendHeaders(); exit; } if (preg_match("/-allow/", $matchedRoute)) { return true; } // @todo adicionar uma tabela com chaves de acesso basico if ($app->request->getHeader('BasicAuthorization') === 'uHealth1235486tcc') { //validar acesso a recursos basicos if (preg_match("/-authbasic/", $matchedRoute)) { return true; } if (strlen($app->request->getHeader('Token'))) { if ($app->getDi()->get('entityManager')->getRepository('Domain\\User\\Entity\\Login')->findOneBy(['token' => $app->request->getHeader('Token'), 'status' => 'active'])) { return true; } } } $app->response->setStatusCode(401, 'OK')->sendHeaders(); $app->response = new \Api\Responses\JSONResponse(); $app->response->useEnvelope(true)->convertSnakeCase(false)->send(['messages' => ['Você não tem permissão para acessar esse recurso']]); return false; }); /** * Mount all of the collections, which makes the routes active. */ foreach ($di->get('collections') as $collection) { $app->mount($collection); }