package config import "time" // 最大生命週期 const maxLife = 10 * time.Minute // 數據存儲 var tokens map[time.Time]string // 添加 token func Add(token string) { if tokens == nil { tokens = map[time.Time]string{} } tokens[time.Now()] = token } // 驗證 token func Auth(token string) bool { for k, v := range tokens { // 清理 if int64(k.Sub(time.Now()).Minutes()) > int64(maxLife) { delete(tokens, k) } // 比較 if v == token { delete(tokens, k) return true } } return false }