南京电子商务网站建设,wordpress数据文件路径,美团网站怎么做,做短视频网站用哪家cms概念
JSON Web Token本质上就是一串字符串#xff0c;一串包含了很多信息的字符串令牌拥有三个部分头部-包含加密算法和令牌类型{alg:算法名称,type:JWT}负载-包含数据和信息-七个官方默认-也可以自己定义内容{iss#xff…概念
JSON Web Token本质上就是一串字符串一串包含了很多信息的字符串令牌拥有三个部分头部-包含加密算法和令牌类型{alg:算法名称,type:JWT}负载-包含数据和信息-七个官方默认-也可以自己定义内容{iss发行人exp到期时间sub主题aud用户nbf在此之前不可用iat发布时间jtiJWT ID用于标识该JWT}签名-可以保护数据不被篡改
java-jwt
jwt在java中的应用token验证1.收到用户客户端输入的用户名和密码的登录请求2.验证通过3.返回给用户客户端一个生成的token4.用户客户端收到token后存储在客户端-localstorage/cookies5.用户客户端每次请求后端服务时都会携带token-在头部信息header中携带6.后端服务接受token验证通过则返回给请求的数据否则请求失败在java应用中-验证通过时创建token-后端请求时解析token
创建token
1.创建头部创建map集合将头部信息放进去-Map map new HashMap()map.put(als,加密方式)map.put(typ,JWT)
2.创建负载声明加密算法和使用的公钥信息--加盐Algorithm algorithm Algoritem.HMAC265(szr)创建token加入各种信息String token JWT.created().//签发人withIssur(szr).//受众withAudience(自定义).//主题withSubject(szr).//签发时间-生成时间-当前时间withIssuedAt(new Date()).//过期时间-token时效性-不能一直有效-一小时withExpiresAt(System.currentTimeMillis() 1000 * 60 * 60).//自定义内容withClaim(name,szr).//加盐sign(algorithm)
解析token //根据加盐内容和公钥获取内容JWTVerifier szr JWT.require(algorithm).withIssuer(szr).build();DecodedJWT dec szr.verify(获取到的token);String name dec.getClaim(name).asString();//结果为nameszr