pub struct TokenInfo {
pub token: TokenValue,
pub login_id: String,
pub login_type: String,
pub create_time: DateTime<Utc>,
pub last_active_time: DateTime<Utc>,
pub expire_time: Option<DateTime<Utc>>,
pub device: Option<String>,
pub extra_data: Option<Value>,
pub nonce: Option<String>,
pub refresh_token: Option<String>,
pub refresh_token_expire_time: Option<DateTime<Utc>>,
}Expand description
Token 信息 | Token Information
存储 Token 的完整信息,包括元数据和安全特性 Stores complete token information, including metadata and security features
§字段说明 | Field Description
token: Token 值 | Token valuelogin_id: 登录用户 ID | Logged-in user IDlogin_type: 登录类型(如 “user”, “admin”)| Login type (e.g., “user”, “admin”)create_time: Token 创建时间 | Token creation timelast_active_time: 最后活跃时间 | Last active timeexpire_time: 过期时间(None 表示永不过期)| Expiration time (None means never expires)device: 设备标识 | Device identifierextra_data: 额外数据 | Extra datanonce: 防重放攻击的一次性令牌 | One-time token for replay attack preventionrefresh_token: 用于刷新的长期令牌 | Long-term token for refreshrefresh_token_expire_time: Refresh Token 过期时间 | Refresh token expiration time
Fields§
§token: TokenValueToken 值 | Token value
login_id: String登录 ID | Login ID
login_type: String登录类型(user、admin 等)| Login type (user, admin, etc.)
create_time: DateTime<Utc>Token 创建时间 | Token creation time
last_active_time: DateTime<Utc>Token 最后活跃时间 | Token last active time
expire_time: Option<DateTime<Utc>>Token 过期时间(None 表示永不过期)| Token expiration time (None means never expires)
device: Option<String>设备标识 | Device identifier
extra_data: Option<Value>额外数据 | Extra data
nonce: Option<String>Nonce(用于防重放攻击)| Nonce (for replay attack prevention)
refresh_token: Option<String>Refresh Token(用于刷新访问令牌)| Refresh Token (for refreshing access token)
refresh_token_expire_time: Option<DateTime<Utc>>Refresh Token 过期时间 | Refresh Token expiration time
Implementations§
Source§impl TokenInfo
impl TokenInfo
pub fn new(token: TokenValue, login_id: impl Into<String>) -> Self
pub fn is_expired(&self) -> bool
pub fn update_active_time(&mut self)
Trait Implementations§
Source§impl<'de> Deserialize<'de> for TokenInfo
impl<'de> Deserialize<'de> for TokenInfo
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for TokenInfo
impl RefUnwindSafe for TokenInfo
impl Send for TokenInfo
impl Sync for TokenInfo
impl Unpin for TokenInfo
impl UnwindSafe for TokenInfo
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)