PHP Classes

File: app/UserRouter.php

Recommend this page to a friend!
  Packages of Rodrigo Faustino   Face ID PHP   app/UserRouter.php   Download  
File: app/UserRouter.php
Role: Example script
Content type: text/plain
Description: Example script
Class: Face ID PHP
Recognize faces by analyzing image descriptors
Author: By
Last change:
Date: 1 year ago
Size: 2,331 bytes
 

Contents

Class file image Download
<?php

namespace App;

require "../vendor/autoload.php";

header("Access-Control-Allow-Origin: *");
header("Access-Control-Allow-Methods: GET, POST, DELETE, PUT, OPTIONS");
header("Access-Control-Allow-Headers: Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With");
if ($_SERVER['REQUEST_METHOD'] === 'OPTIONS') {
    exit(0);
}

use App\Database\Conexao;
use App\Database\UserDAO;
use App\Model\User;
use App\Controller\UserController;
use App\Controller\FaceRecognitionController;
use Dotenv\Dotenv;

$dotenv = Dotenv::createImmutable(dirname(__FILE__, 2));
$dotenv->load();


$conexao = Conexao::getConexao();
$userDAO = new UserDAO($conexao);
$userController = new UserController($userDAO);
$faceRecognition = new FaceRecognitionController($userDAO, 0.6);


$body = json_decode(file_get_contents('php://input'), true);

switch ($_SERVER["REQUEST_METHOD"]) {
    case "POST":
        $resultado = '';
        if (isset($body['acao'])) {
            $user = new User();
            switch ($body['acao']) {
                case 'registrar':
                    $user->setEmail($body['email']);
                    $user->setRostos($body['rosto']);
                    $resultado = $userController->inserir($user);
                    break;
                case 'login':
                    if (isset($body['descriptor'])) {
                        $descriptor = $body['descriptor'];
                        $debug = $body['debug'];
                        $resultado = $faceRecognition->recognize($descriptor, $debug);
                    } else {
                        $resultado = ['status' => false, 'message' => 'Descriptor não informado'];
                    }
                    break;
            }
        }
        echo json_encode($resultado);
        break;
    case "GET":
        if (isset($_GET['relatorio'])) {
            $resultado = $userController->buscarTodos();
            echo json_encode(["usuarios" => $resultado]);
        } else {
            $id = $_GET['id'] ?? null;
            $resultado = $userController->buscarPorId($id);
            echo json_encode(["usuarios" => $resultado]);
        }
        break;
    case "DELETE":
        $id = $_GET['id'] ?? '';
        $resultado = $userController->excluir($id);
        echo json_encode($resultado);
        break;
}