Bootstrap

Claims如何获取里面的信息

Claims如何获取里面的信息

一、首先你想拿到Claims里的用户信息的前提是你里面有存储东西
例子:

这里就是个演示,实际按需要去搞

User user = xxxx;//你的用户实体类
Map<String, Object> test = new HashMap<>();
test.put("id", user.getId());
test.put("name", user.getName());
String token = JWTUtil.createJWT(test);
return R.ok().put("token", token);

这样我就建好了一个登录传过去的token值(这里面包括了我们的用户信息),jwt这里就略过。

二、自然就是我们要拿Claims里的数据了

public R test(HttpServletRequest request) {
        String token = request.getHeader(AuthConsts.AUTHORIZATION_HEADER);
        Claims claims = JWTUtil.parseJWT(appConfig.getJwtSecret(), token);
        System.out.println("这是id"+claims.get("id", Integer.class));
        System.out.println("这是名称"+claims.get("name", String.class));
        return R.data(claims);
    }

输出> 这是id 1
输出> 这是名称 DadiaoMan

总结: 需要就使用拿就用 claims.get(“你存的名称”,这个数据的类型);

新手学习记录,有错请指出。多多包涵!

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;