生成
header = {
"alg": "HS256", # 编码方式
"typ": "JWT"
}
第一部分:对他的header进行base64编码,替换等号为空
payload = {
"name": "admin", # 用户等信息
......
}
第二部分:对他的payload进行base64编码,替换等号为空
第三部分:第一部分拼接第二部分,然后用HS256加密进行base64编码,等号替换为空
验证
获取前端token,对其从右边第一个点进行分割,会得到签名部分和签名输入部分,对签名输入部分进行哈希加密,然后base64编码,将等号替换为空,然后与签名部分对比,判断是否验证成功