c86f08c325
Co-Authored-By: Claude Code <noreply@anthropic.com>
25 lines
923 B
PHP
25 lines
923 B
PHP
<?php
|
|
/**
|
|
* 会话校验接口 GET /api/auth/session.php
|
|
* 前端页面加载时调用:未登录返回 401(前端跳转登录页),已登录返回当前用户信息 + CSRF Token。
|
|
*/
|
|
require_once __DIR__ . '/../common/Api.php';
|
|
|
|
Api::boot(); // 仅要求登录
|
|
|
|
$pdo = DB::getInstance()->getPdo();
|
|
$stmt = $pdo->prepare("SELECT last_login_time, last_login_ip FROM system_users WHERE id = ?");
|
|
$stmt->execute([(int)$_SESSION['user_id']]);
|
|
$loginInfo = $stmt->fetch() ?: [];
|
|
|
|
Response::success([
|
|
'user_id' => (int)$_SESSION['user_id'],
|
|
'username' => $_SESSION['username'],
|
|
'real_name' => $_SESSION['real_name'],
|
|
'role_name' => $_SESSION['role_name'],
|
|
'permissions' => $_SESSION['permissions'],
|
|
'csrf_token' => csrfToken(),
|
|
'last_login_time' => $loginInfo['last_login_time'] ?? null,
|
|
'last_login_ip' => $loginInfo['last_login_ip'] ?? null,
|
|
]);
|