基本信息
源码名称:JWT鉴权(java源码)
源码大小:0.03M
文件格式:.zip
开发语言:Java
更新时间:2021-10-21
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍

1、登录验证的接口 : 
192.168.3.69:8080/loginApi/login
body参数:
{
"username":"gwh",
"password":"gwh666"
}
返回:
{
    "code": "0000",
    "message": "登录成功",
    "content": {
        "sessionid": "2996baaf47c34294a1295626988ce65a",
        "userid": "93ab22fbf67b4cd4b065d9d69a2d7cc9"
    }
}

2、普通查询接口:
192.168.3.69:8080/visit/callDetail
header参数:
authorization   值为 userid_sessionid  (中间是下划线)
93ab22fbf67b4cd4b065d9d69a2d7cc9_2996baaf47c34294a1295626988ce65a

body参数:
{
"tellPhone":"18601386968",
"pageNo":"1",
"pageSize":"10"
}
返回:
{
    "code": "0000",
    "message": "查询成功",
    "content": {
        "page": {
            "pageNo": 1,
            "pageSize": 10,
            "count": 6,
            "list": [
                {
                    "id": "4531",
                    "isNewRecord": false,
                    "updateDate": null,
                    "user": {
                        "id": "655a1d19798d433bad4c0f69491070c0",
                        "isNewRecord": false,
                        "photoNo": null,
                        "yuyinUserNo": null
                    },
                    "taskId": "249",
                    "audioUrl": "http://acrtest.vcyber.com:8083/paph_yiren/20180629/181832_018601386968_9a10cff5-4148-4659-9d68-e1a1261fe986.wav",
                    "taskTemplate": {
                        "id": "88",
                        "isNewRecord": false
                    },
                    "yuyinCustomerTag": {
                        "id": "124",
                        "pageNo": 0,
                        "pageSize": 0
                    },
                    "yuyinUserType": "个人用户",
                    "taskName": "测试暂停",
                    "tagids": null,
                    "taskCreateDate": 1530267341000
                }
            ]       
}
    }
}

3、AuthorizationInterceptor类为拦截器,参考 spring-mvc.xml中的 <!-- JWT鉴权拦截器 -->配置

4、接口中方法上加注解 @Authorization(value = "callDetail") ,启到拦截作用

5、JWT原理:对登录和注册方法放行,用户名和密码验证正确后,服务端保存到redis缓存并设置有效期,返回给客户端userid和sessionid,
客户端自行保存(Cookie或者 h5的localStorage)。
其他接口统一拦截(header里的参数authorization 值为 userid_sessionid),
服务端到redis根据key:userid 取出根据 sessionid 与接收的客户端 sessionid验证是否一致。