86 lines
3.0 KiB
Go
86 lines
3.0 KiB
Go
|
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 列表
|
||
|
}
|
||
|
|