24 lines
605 B
PHP
24 lines
605 B
PHP
<?php
|
|
|
|
if ($method !== 'DELETE' && $method !== 'POST') {
|
|
json_error('METHOD_NOT_ALLOWED', 'Method not allowed', 405);
|
|
}
|
|
|
|
$token = get_bearer_token();
|
|
if (!$token) {
|
|
json_error('UNAUTHORIZED', 'Missing Bearer token', 401);
|
|
}
|
|
|
|
try {
|
|
token_revoke($token);
|
|
} catch (Throwable $e) {
|
|
if (function_exists('qdb_api_log_note_exception')) {
|
|
qdb_api_log_note_exception($e);
|
|
}
|
|
require_once __DIR__ . '/../lib/errors.php';
|
|
error_log('logout: ' . $e->getMessage());
|
|
json_error('SERVER_ERROR', qdb_public_error_message($e, 'Logout'), 500);
|
|
}
|
|
|
|
json_success(['loggedOut' => true]);
|