zoukankan      html  css  js  c++  java
  • 1分钟学会使用jwt,(Json Web token)创建token令牌,解析token令牌(通俗的说就是加密,解密)

    上代码

    public static void main(String[] args) {
            //用户登录,获取数据库用户表的信息
            //假如用户id:1
            JwtBuilder builder = Jwts.builder()
                    //设置用户id
                    .setId("1")
                    //设置主题(这个主题是干什么用的?,也可以不设置,感觉可以放其他重要的信息)
                    .setSubject("bwcx123")
                    //设置创建时间
                    .setIssuedAt(new Date())
                    //设置过期时间
                    .setExpiration(new Date(new Date().getTime() + 60000))
                    //设置角色名称
                    .claim("roles","admin")
                    //自定义key(可以理解为解密的钥匙一般在配置文件里面)
                    .signWith(SignatureAlgorithm.HS256, "bwcyguil");
            //用户登录之后,返回给前端token
            System.out.println("token..."+builder.compact());
    
            //前端请求带着token,后端解析
            Claims claims=Jwts.parser().setSigningKey("bwcyguil").parseClaimsJws(builder.compact()).getBody();
            //获取用户id
            System.out.println("id:"+claims.getId());
            //获取主题
            System.out.println("subject:"+claims.getSubject());
            //获取token创建时间(格式化时间引的jar为org.joda.time.DateTime)
            System.out.println("IssuedAt:"+ new DateTime(claims.getIssuedAt()).toString("yyyy-MM-dd HH:mm:ss"));
            //获取角色名称
            System.out.println("roles:"+claims.get("roles"));
        }
    <dependency>
                <groupId>io.jsonwebtoken</groupId>
                <artifactId>jjwt</artifactId>
                <version>0.6.0</version>
            </dependency>
    <!-- https://mvnrepository.com/artifact/joda-time/joda-time -->
            <dependency>
                <groupId>joda-time</groupId>
                <artifactId>joda-time</artifactId>
                <version>2.10</version>
            </dependency>
  • 相关阅读:
    符号化Symbol(符号)体系
    shp2pgsql
    ArcGIS Flex(9.3)+GP服务完成最短路径分析(1)转载
    安装postgis,使用postgis导入shapefile的步骤总结 转载
    iis .NET的安装顺序反了该怎么办?
    WindowsXP 安装 PostgreSQL 8.4.2 数据库
    Web前端数据缓存处理
    SpringBoot 无Session开发
    Web端子页面iframe出现登录页面处理。
    Mybatis Generator自定义扩展
  • 原文地址:https://www.cnblogs.com/javalbb/p/12752088.html
Copyright © 2011-2022 走看看