Jwt生成token以及解析token

package com.zyw.jwt.controller;


import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

@RestController
@Slf4j
@RequestMapping
public class LoginController {
   


    @GetMapping("/get/token/{username}")
    public String getToken(@PathVariable("username") String username){
   
        Map<String,Object> infoMap = new HashMap<>(16);
        infoMap.put("userId",46);
        infoMap.put("name",username);
        infoMap.put("salary",1000000);
        String token = Jwts.builder().setSubject("zyw").setExpiration(new Date(System.currentTimeMillis() + 28800000))
                .setClaims(infoMap).setIssuedAt(new Date())
                .signWith(SignatureAlgorithm.HS256, "jwtDemo").compact();
        return token;

    }

    @GetMapping("/parse/token/{token}")
    public String parseToken(@PathVariable("token") String token){
   
        Claims claims = Jwts.parser().setSigningKey("jwtDemo").parseClaimsJws(token).getBody();
        String name = (String)claims.get("name");
        String salary = String.valueOf(claims.get("salary"));
        String userId = String.valueOf(claims.get("userId"));
        log.info(name);
        log.info(salary);
        log.info(userId);
        return name;
    }
}

相关推荐

  1. Jwt生成token以及解析token

    2024-02-12 14:20:01       29 阅读
  2. TP8 利用jwt 生成token

    2024-02-12 14:20:01       9 阅读
  3. flask 实现token生成以及携带token请求接口

    2024-02-12 14:20:01       31 阅读
  4. JWT令牌(Token)设计

    2024-02-12 14:20:01       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-12 14:20:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-12 14:20:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-12 14:20:01       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-12 14:20:01       20 阅读

热门阅读

  1. 多重背包问题 Ⅰ&Ⅱ &Ⅲ

    2024-02-12 14:20:01       32 阅读
  2. AutoSAR(基础入门篇)8.2-IO相关驱动(一)

    2024-02-12 14:20:01       32 阅读
  3. leetcode-Nim 游戏

    2024-02-12 14:20:01       39 阅读
  4. 机器学习简介

    2024-02-12 14:20:01       30 阅读
  5. <网络安全>《28 工业安全态势感知平台》

    2024-02-12 14:20:01       28 阅读
  6. visual studio2019中调用C文件中函数报错的问题分析

    2024-02-12 14:20:01       27 阅读
  7. 倒计时57天

    2024-02-12 14:20:01       37 阅读
  8. 「优选算法」:山脉数组的峰顶索引

    2024-02-12 14:20:01       25 阅读
  9. C语言的数组

    2024-02-12 14:20:01       29 阅读
  10. C# Thread的使用

    2024-02-12 14:20:01       34 阅读
  11. 时间函数举例2

    2024-02-12 14:20:01       32 阅读