lässig
This commit is contained in:
commit
2c36a7665e
7 changed files with 597 additions and 0 deletions
59
public/index.php
Normal file
59
public/index.php
Normal file
|
@ -0,0 +1,59 @@
|
|||
<?php
|
||||
|
||||
use Symfony\Component\HttpFoundation\RedirectResponse;
|
||||
use Symfony\Component\HttpFoundation\Request;
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
use Symfony\Component\Uid\Ulid;
|
||||
use Symfony\Component\Uid\Uuid;
|
||||
|
||||
require_once __DIR__ . '/../vendor/autoload.php';
|
||||
|
||||
$request = Request::createFromGlobals();
|
||||
$path = $request->getPathInfo();
|
||||
$scheme = $request->getScheme();
|
||||
$host = $request->getHost();
|
||||
$base = "{$scheme}://{$host}/";
|
||||
|
||||
function response(string $text): Response {
|
||||
return new Response($text, 200, [
|
||||
'Content-Type' => 'text/plain',
|
||||
]);
|
||||
}
|
||||
|
||||
$response = match ($path) {
|
||||
'/uuid/v1' => \response(Uuid::v1()->toString()),
|
||||
'/uuid/v4' => \response(Uuid::v4()->toString()),
|
||||
'/uuid/v6' => \response(Uuid::v6()->toString()),
|
||||
'/uuid/v7' => response(Uuid::v7()->toString()),
|
||||
'/ulid' => response(Ulid::generate()),
|
||||
'/' => response(<<<TXT
|
||||
UUID/ULID Webservice
|
||||
|
||||
Available Endpoints:
|
||||
/uuid/v1 - Generate a UUID v1 (time-based)
|
||||
curl {$base}uuid/v1
|
||||
|
||||
/uuid/v3 - Generate a UUID v3 (name-based, MD5 hash)
|
||||
curl {$base}uuid/v3
|
||||
|
||||
/uuid/v4 - Generate a UUID v4 (random)
|
||||
curl {$base}uuid/v4
|
||||
|
||||
/uuid/v5 - Generate a UUID v5 (name-based, SHA-1 hash)
|
||||
curl {$base}uuid/v5
|
||||
|
||||
/uuid/v6 - Generate a UUID v6 (reordered time-based)
|
||||
curl {$base}uuid/v6
|
||||
|
||||
/uuid/v7 - Generate a UUID v7 (Unix timestamp-based)
|
||||
curl {$base}uuid/v7
|
||||
|
||||
/ulid - Generate a ULID
|
||||
curl {$base}ulid
|
||||
|
||||
TXT
|
||||
),
|
||||
default => new RedirectResponse("/", 301),
|
||||
};
|
||||
|
||||
$response->send();
|
Loading…
Add table
Add a link
Reference in a new issue