使用jwt
jwt:json web token
使用jwt的好处
1,无状态
2解耦
3,更适合于移动端Android,ios
4,性能更好
5,能够不考虑csrf攻击
maven依赖
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.6.0</version>
</dependency>
①,客户端请求
Date date = new Date();
JwtBuilder signWith = Jwts.builder()
.setId("2")//id
.setSubject("冬马")//名字
.setIssuedAt(date)//创建时间
.signWith(SignatureAlgorithm.HS256,"salt")//签名算法,盐
.claim("role", "admin")//添加自定义属性
.setExpiration(new Date(date.getTime() + 1000 * 60))//一分钟过期
; System.out.println(signWith.compact());
②,服务端接收
    Claims body = Jwts.parser().setSigningKey("salt")
        .parseClaimsJws("eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIyIiwic3ViIjoi5Yas6amsIiwiaWF0IjoxNTQyODY0NzA5LCJyb2xlIjoiYWRtaW4iLCJleHAiOjE1NDI4NjQ3Njl9.cjALFF2h3YC5LwffcYSoEyRd9q14CT60Gp1dg5hf8vU")
        .getBody();
        System.out.println("用户id:"+body.getId());
        System.out.println("用户名:"+body.getSubject());
        System.out.println("发布时间:"+body.getIssuedAt());
        System.out.println("过期时间:"+body.getExpiration());
        System.out.println("角色:"+body.get("role"));
使用jwt的更多相关文章
- 看图理解JWT如何用于单点登录
		
单点登录是我比较喜欢的一个技术解决方案,一方面他能够提高产品使用的便利性,另一方面他分离了各个应用都需要的登录服务,对性能以及工作量都有好处.自从上次研究过JWT如何应用于会话管理,加之以前的项目中也 ...
 - JWT实现token-based会话管理
		
上文<3种web会话管理的方式>介绍了3种会话管理的方式,其中token-based的方式有必要从实现层面了解一下.本文主要介绍这方面的内容.上文提到token-based的实现目前有一个 ...
 - 用JWT来保护我们的ASP.NET Core Web API
		
在上一篇博客中,自己动手写了一个Middleware来处理API的授权验证,现在就采用另外一种方式来处理这个授权验证的问题,毕竟现在也 有不少开源的东西可以用,今天用的是JWT. 什么是JWT呢?JW ...
 - Laravel-lumen 配置JWT
		
具体步骤参照: [ JWT & Lumen ] 第一步 在项目根目录 执行命令 composer require tymon/jwt-auth第二步 在 bootstrap/app.php 的 ...
 - .net core Jwt 添加
		
Jwt 已经成为跨平台身份验证通用方案,如不了解请关注:https://jwt.io/. 为了和微软其他验证模块有个比较好的衔接,项目中采用了微软开发的jwt组件: System.IdentityMo ...
 - 多说评论系统API调用和本地身份说明(JWT)
		
多说评论系统是一个非常好用的第三方评论插件,聚合了大多数的SNS平台账号登录和分享功能,UI也很不错. 作为网站快速接入评论系统,多说是一个比较好的选择,其也提供了一些实用的API去满足定制化需求. ...
 - 【JWT】JWT+HA256加密 Token验证
		
目录 Token验证 传统的Token验证 JWT+HA256验证 回到顶部 Token验证 最近了解下基于 Token 的身份验证,跟大伙分享下.很多大型网站也都在用,比如 Facebook,Twi ...
 - 基于Token的身份验证——JWT
		
初次了解JWT,很基础,高手勿喷. 基于Token的身份验证用来替代传统的cookie+session身份验证方法中的session. JWT是啥? JWT就是一个字符串,经过加密处理与校验处理的字符 ...
 - jwt refresh token
		
$app->post('auth/refresh-token', ['middleware' => 'jwt.refresh', function() { try { $old_token ...
 - JWT【JSON Web Token】 简述
		
draft: http://self-issued.info/docs/draft-ietf-oauth-json-web-token.html http://tools.ietf.org/html/ ...
 
随机推荐
- 小程序编辑器vscode
			
安装中文版 1)打开vscode工具: 2)使用快捷键组合[Ctrl+Shift+p],在搜索框中输入“configure display language”,点击确定后: 3)如图所示 =>安 ...
 - vue 验证码倒计时
			
//html <div class="input-div" v-show="formData.phone"> <input type=&quo ...
 - 微信小程序实现简单的树形图treeview
			
H5有很多树形图(树状图)的组件,echarts也有.比如像bootstrap的treeview,定制性很强.不过这些都无法方便地为小程序所用,除非整个页面用H5搭建再用webview框进去,有点粗暴 ...
 - 以太坊nonce
			
以太坊系列(ETH&ETC)在发送交易有三个对应的RPC接口,分别是ethsendTransaction.ethsendRawTransaction和personal_sendTransact ...
 - 【Linux】-NO.9.Linux.5.Nexus.1.001-【CentOS 7 Install Nexus 3.3】-
			
1.0.0 Summary Tittle:[Linux]-NO.9.Linux.5.Nexus.1.001-[CentOS 7 Install Nexus 3.3]- Style:Linux Seri ...
 - 【LeetCode每天一题】Longest Common Prefix(最长前缀)
			
Write a function to find the longest common prefix string amongst an array of strings. If there is n ...
 - 《2017年Q2中国城市研究报告
			
根据百度慧眼团队发布的<2017年Q2中国城市研究报告>,2017年第二季度人口吸引力排名前五的城市与第一季度相同,深圳继续保持第一的领先位置.
 - RN项目中使用react-native-elements报错: Unrecognized font family 'Material Icons'
			
查询了一些方案,但各自的环境不尽相同,最后在google中找到了答案.主要问题在于 (1)版本问题 (2)Xcode配置问题 报错如下 解决步骤: 1 . 首先需要正确安装 npm i -S reac ...
 - Javascript-do_while....
			
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
 - TP父类及模板继承
			
一.TP父类方法继承 session用法 用登录页面做例子 <?php namespace Home\Controller; use Think\Controller; class LoginC ...