Token认证策略

一、传统模式

session做认证			就不过多介绍了

二、采用JWT

  JSON WBEB TOKENS实现Token

概念 :将用户的信息做成一个加密字符串传递给客户端,客户端访问时服务器验证token 确认身份

前端部分 1

	$.ajaxSetup({ //设置全局ajax的属性,如果属性被重写会覆盖
        cache: false,
        beforeSend: function (XHR) {
            XHR.setRequestHeader("Authorization", "Bearer " + Storage.getToken());// 这个就是 token,具体参数名可更改 Storage 是自定义的本地储存对象 (Local Storage)储存方式是 window.localStorage.setItem("Token", "123123"); 
        },
//下面是后台对token认证不通过的处理 401是没有登陆 403是没有权限
        statusCode: {
            400: function (r) {
                var errJson = r.responseJSON;
                location.href = "/no_operation?msg=" + errJson.message;
            }
            , 401: function () {
                var topWindow = AppHelper.getTopWindow();
                var dir = layui.setter.base.replace("layuiadmin/",layui.setter.dir);
                console.log(dir)
                topWindow.location.href = dir + "sys/user/login.html";
            }403: function () {
.
.
.
        }
});

后端部分(怕以后忘记 先记录一下Token概念)

  1. 生成一个 Token 发放给用户
    Token 包含3个部分:
    ·头部 储存两个信息 加密算法、声明类型(这里声明类型是 jwt)
    ·载荷 看心情
    ·签证 签名
    不同部分之间使用 . 隔开,这是JAVA定义的东西

  2. 验证Token 直接写到 filter 就完事

如何使用:
生成token:

Jwts.builder()
        .setSubject(subject)//设置主题 类似于key 自定义
        .setClaims(claims)//设置所搭载的数据  类型Map
        .setIssuedAt(new Date())//设置开始使用时间
        .setExpiration(expireDate)//设置到期时间
        .signWith(SignatureAlgorithm.HS256,SECRET_KEY)//设置加密类型和密钥
        .compact()  //return 的token字符串

解析token:

Jwt jwt=Jwts.parser()
        .setSigningKey(SECRET_KEY)//密钥
        .parse(token);//token字符串
//claims就是所搭载的数据        
Map<String,Object> claims=(Map<String, Object>) jwt.getBody();

下面放点资料截图:
在这里插入图片描述
在这里插入图片描述


  1. (写法很多 目前感觉就这个好) ↩︎

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

璐先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值