using FutureMailAPI.Models; namespace FutureMailAPI.Extensions { public static class HttpContextExtensions { /// /// 获取当前用户ID /// public static int? GetCurrentUserId(this HttpContext context) { if (context.Items.TryGetValue("UserId", out var userIdObj) && userIdObj is int userId) { return userId; } return null; } /// /// 获取当前用户邮箱 /// public static string? GetCurrentUserEmail(this HttpContext context) { if (context.Items.TryGetValue("UserEmail", out var userEmailObj) && userEmailObj is string userEmail) { return userEmail; } return null; } /// /// 获取当前访问令牌 /// public static OAuthAccessToken? GetCurrentAccessToken(this HttpContext context) { if (context.Items.TryGetValue("AccessToken", out var accessTokenObj) && accessTokenObj is OAuthAccessToken accessToken) { return accessToken; } return null; } } }