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;
}
}
}