pub async fn get_user_by_token(
token: &str,
) -> Result<Option<SessionUser>, ServerFnError>Expand description
根据会话 token 查询对应用户(不含密码哈希,供会话缓存使用)。
优先命中内存缓存,避免每次请求都执行 DB JOIN;未命中时回查数据库并回填缓存。
缓存命中后仍回查 users.session_generation:若用户已被降级/封禁(generation 被
bump),缓存的旧 SessionUser.generation 不再匹配,此时逐出缓存并视为未登录,
消除权限残留窗口(见 H2)。仅服务端内部使用,不会暴露给前端。