以目前浅薄的理解,jwt就是一种加密token的手段,这个token也只有自己能解开,如果客户端以cookie存这个token,可能会存在cookie被窃取的情况。

另外,jwt这中加密方式因为有过期时间的参与(当前登陆时间+延迟时长),所以每次请求zull都要判断当前时间是否大于你的设置(这里可以造成多用户同一个账户同时登陆),如果大于了,解密出来的东西就和预期不符,就要重新登陆。所以有刷新token的机制存在,怎么刷?猜测就是客户端在token将死之前重新获取token呗(反正是无状态的,多发的。)。当然,如果你遇到只能一个账号单一在线的需要,刷token的方式我觉得是不可行的。

通过jwt我很快想通很多问题,大概都是隐约的猜测。比如单点登陆,web登陆了,手机也要登陆。刷验证码呗,其实就是请求了一个连接,这个连接推送消息给鉴权中心,发现已经登陆了,ok,推送给手机一个token,并告诉它,ok,你登陆吧。

---------

在做jwt时,因为考虑到复用性,把登陆单独提出来。登陆和zull鉴权就是单独的模块,但是他们都公用jwt工具类和user实体对象啊。抽象到common里。

怎么调取呢?mavne的pom里加上对common的引用就可以了。这里就想到了mavne可能把common打包成jar给登陆模块和鉴权模块引用了。懒得查的那么细致了。猜测了一下就打住了。

--------

springcloud的熔断php能不能实现呢?

我感觉行,比如做个网关,外部请求网关,网关调用内网接口,调用时要判断下超时时间。

springcloud的鉴权中心php能不能实现呢?

我感觉也行,jwt又不是限制在单一语言的标准,它适用与多种语言。

。。。。

--------

总感觉jwt比较重要,比如你做好一个jwt的鉴权中心当作网关做转发,那么另外一个项目就专心做业务好了。前面一个门神,后面一顿业务增删改查。。。

https://gitee.com/fleam/jwt

maven and jwt的更多相关文章

  1. spring security oauth2

    https://connect.qq.com/manage.html#/ http://wiki.connect.qq.com/%E7%BD%91%E7%AB%99%E5%BA%94%E7%94%A8 ...

  2. IDEA SSM+MAVEN+JWT 图书管理系统

    压缩包内含有MAVEN,TOMCAT,需要手动对IDEA进行配置.同时也包含数据库文件. 项目搭载了swagger,可以方便地对接口进行测试 在开发的过程中我也进行了一些记录,可以参考https:// ...

  3. Maven学习总结

    转载至:http://www.cnblogs.com/xdp-gacl/p/3498271.html 一 入门 一.Maven的基本概念 Maven(翻译为"专家","内 ...

  4. Maven学习总结(一)——Maven入门——转载

    一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.1. ...

  5. Maven(一)

    Maven学习总结(一)——Maven入门 一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的 ...

  6. maven入门

    1.1.项目构建 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 项目构建过程包括 ...

  7. Maven学习(一)-- Maven入门

    摘自:http://www.cnblogs.com/xdp-gacl/p/3498271.html 一.Maven的基本概念 Maven(翻译为"专家","内行" ...

  8. Java JWT: JSON Web Token

    Java JWT: JSON Web Token for Java and Android JJWT aims to be the easiest to use and understand libr ...

  9. 使用 JWT 生成 Token 代码示例

    JSON Web Token,简称 JWT, 是一个开放的标准(RFC 7519),它定义了以一种紧凑的.自包含的 JSON 对象在各方之间安全传输信息的方式.该信息含有数字签名,可以被验证和信任. ...

随机推荐

  1. 原生ajax请求

    $('#send').click(function(){ //请求的5个阶段,对应readyState的值 //0: 未初始化,send方法未调用: //1: 正在发送请求,send方法已调用: // ...

  2. Vue(十九)Vuex

    Vuex 1. 简介 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 简单来说,用来集中管 ...

  3. JAVA自学笔记27

    JAVA自学笔记27 1.类的加载 1)当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化. ①加载:就是指将class文件读入内存,并为之创 ...

  4. Java入门学习笔记

    Hello.java public class Hello { public static void main(String[] args) { System.out.println("He ...

  5. AOP - C# Fody中的方法和属性拦截

    很久很久以前用过postsharp来做AOP, 大家知道的,现在那东东需要付费,于是尝试了一下Fody,但是发现Fody跟新太快了,所以大家在安装fody的时候尽力安装老的版本:packages.co ...

  6. gitbook安装与使用,并使用docker部署

    本文简单介绍如何安装并使用gitbook,最后如何使用docker构建书籍镜像. 1. 前置条件 需要Nodejs环境,安装npm,国内用户再安装cnpm npm install -g cnpm -- ...

  7. 利用StringEscapeUtils来转义和反转义html/xml/javascript中的特殊字符

    我们经常遇到html或者xml在Java程序中被某些库转义成了特殊字符. 例如: 各种逻辑运算符: > >= < <= == 被转义成了 &#x3D;&#x3D ...

  8. python接口自动化测试(七)-unittest-批量用例管理

    我们日常项目中的接口测试案例肯定不止一个,当案例越来越多时我们如何管理这些批量案例?如何保证案例不重复?如果案例非常多(成百上千,甚至更多)时如何保证案例执行的效率?如何做(批量)测试数据的管理?如何 ...

  9. SQL Server里如何处理死锁

    在今天的文章里,我想谈下SQL Server里如何处理死锁.当2个查询彼此等待时会发生死锁,没有一个查询可以继续它们的操作.首先我想给你大致讲下SQL Server如何处理死锁.最后我会展示下SQL ...

  10. 设计模式之二十一:中介者模式(Mediator)

    中介者模式:定义了一个对象.用来封装一系列对象的交互.中介者模式通过使对象之间不必显式引用减少了对象之间的耦合,而且同意你独立改变它们之间的交互. 中介者模式就是将对象之间的交互封装在了一个独立的对象 ...