token过期时间问题

来源:4-4 编码实战:实现用户信息查询接口

夜里挖的坟墓

2019-12-12

token是md5 加密后存数据库的,如果我要验证token 是否过期,我这么在加密后的md5中获取后8位时间戳

写回答

1回答

xiaomo

2019-12-12

同学你好, 当前token的生成规则中, 后8位是时间戳, 前面32位是MD5加密后的字符串.所以时间戳是没有经过MD5加密的,可以直接截取来用:

// GenToken : 生成token
func GenToken(username string) string {
	// 40位字符:md5(username+timestamp+token_salt)+timestamp[:8]
	ts := fmt.Sprintf("%x", time.Now().Unix())
	tokenPrefix := util.MD5([]byte(username + ts + "_tokensalt"))
	return tokenPrefix + ts[:8]
}
0
0

Go实战仿百度云盘-实现企业级分布式云存储系统

紧随“云时代”技术潮流,分布式云存储系统,做第一代云程序员

1077 学习 · 494 问题

查看课程