<?php declare(strict_types=1); namespace App\Controller; use Exception; error_reporting(error_level: E_ALL); require dirname(path: __DIR__) . '/vendor/autoload.php'; $uri = parse_url(url: $_SERVER['REQUEST_URI'], component: PHP_URL_PATH); $uri = explode(separator: '/', string: $uri); if ($uri[1] !== 'api') { $scheme = $_SERVER['REQUEST_SCHEME']; $host = $_SERVER['SERVER_NAME']; $header = "$scheme://$host/openapi/index.html"; header(header: "Location: $header"); exit(0); } header(header: "Access-Control-Allow-Origin: *"); header(header: "Content-Type: application/json; charset=UTF-8"); header(header: "Access-Control-Allow-Methods: OPTIONS,GET,POST,PUT,DELETE"); header(header: "Access-Control-Max-Age: 3600"); header(header: "Access-Control-Allow-Headers: Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With"); $requestMethod = $_SERVER["REQUEST_METHOD"]; try { $app = new BindAPI(); $app->handleRequest(requestMethod: $requestMethod, uri: $uri); } catch (Exception $e) { echo json_encode(value: [ 'error' => $e->getMessage() ]); }