Files
superlink/api/auth/session.php
T

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,
]);