package entity // AuthorizationReq 定義授權請求的結構 type AuthorizationReq struct { GrantType string `json:"grant_type"` // 授權類型 DeviceID string `json:"device_id"` // 設備 ID Scope string `json:"scope"` // 授權範圍 Data map[string]string `json:"data"` // 附加數據 Expires int64 `json:"expires"` // 過期時間(秒) IsRefreshToken bool `json:"is_refresh_token"` // 是否為刷新令牌 Role string `json:"role"` // 用戶角色 Account string `json:"account"` // 登入時的帳號 } // TokenResp 定義訪問令牌響應的結構 type TokenResp struct { AccessToken string `json:"access_token"` // 訪問令牌 TokenType string `json:"token_type"` // 令牌類型 ExpiresIn int64 `json:"expires_in"` // 過期時間(秒) RefreshToken string `json:"refresh_token"` // 刷新令牌 } // CreateOneTimeTokenReq 建立一次性 Token 的請求 type CreateOneTimeTokenReq struct { Token string `json:"token"` // 長期有效的驗證令牌 } // CreateOneTimeTokenResp 建立一次性 Token 的響應 type CreateOneTimeTokenResp struct { OneTimeToken string `json:"one_time_token"` // 一次性令牌 } // RefreshTokenReq 更新 Token 的請求 type RefreshTokenReq struct { Token string `json:"token"` // 令牌 Scope string `json:"scope"` // 授權範圍 Expires int64 `json:"expires"` // 過期時間(秒) DeviceID string `json:"device_id"` // 設備 ID } // RefreshTokenResp 更新令牌的響應 type RefreshTokenResp struct { Token string `json:"token"` // 新的訪問令牌 OneTimeToken string `json:"one_time_token"` // 一次性令牌 ExpiresIn int64 `json:"expires_in"` // 過期時間(秒) TokenType string `json:"token_type"` // 令牌類型 } // CancelTokenReq 註銷 Token 的請求 type CancelTokenReq struct { Token string `json:"token"` // 需要註銷的令牌 } // DoTokenByUIDReq 基於 UID 操作 Token 的請求 type DoTokenByUIDReq struct { IDs []string `json:"ids"` // Token ID 列表 UID string `json:"uid"` // 用戶 ID } // QueryTokenByUIDReq 查詢 UID 對應的 Token type QueryTokenByUIDReq struct { UID string `json:"uid"` // 用戶 ID } // ValidationTokenReq 驗證 Token 的請求 type ValidationTokenReq struct { Token string `json:"token"` // 需要驗證的令牌 } // ValidationTokenResp 驗證並返回 Token 詳情 type ValidationTokenResp struct { Token Token `json:"token"` // Token 詳情 Data map[string]string `json:"data"` // 附加數據 } // DoTokenByDeviceIDReq 基於設備 ID 操作 Token 的請求 type DoTokenByDeviceIDReq struct { DeviceID string `json:"device_id"` // 設備 ID } // CancelOneTimeTokenReq 取消一次性 Token 的請求 type CancelOneTimeTokenReq struct { Token []string `json:"token"` // 一次性 Token 列表 }