代码拉取完成,页面将自动刷新
package token
import (
"fmt"
"time"
)
func NewToken() *Token {
return &Token{
IssueAt: time.Now().Unix(),
AccessExpiredAt: 600,
RefreshExpiredAt: 600 * 4,
Status: &Status{},
Meta: map[string]string{},
}
}
// 检查Token可用性
func (t *Token) CheckAliable() error {
// 检查状态
if t.Status.IsBlock {
return fmt.Errorf(t.Status.BlockReason)
}
// 检查是否过期
dura := time.Since(t.ExpiredTime())
if dura >= 0 {
return fmt.Errorf("令牌已经过期")
}
return nil
}
func (t *Token) ExpiredTime() time.Time {
dura := time.Duration(t.AccessExpiredAt * int64(time.Second))
return time.Unix(t.IssueAt, 0).Add(dura)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。