Your Docusaurus site did not load properly.

A very common reason is a wrong site baseUrl configuration.

Current configured baseUrl = / (default value)

We suggest trying baseUrl =

Hi! All
欢迎来到杨不易呀博客小屋

🍺你的压力源于无法自律,只是假装努力,现状跟不上你内心的欲望,所以你焦急又恐慌---杨不易.|

春天交流群 598347590

最新博客 

从零玩转第三方QQ登陆

从零玩转第三方登录之QQ登录#

前言#

在真正开始对接之前,我们先来聊一聊后台的方案设计。既然是对接第三方登录,那就免不了如何将用户信息保存。首先需要明确一点的是,用户在第三方登录成功之后, 我们能拿到的仅仅是一个代表用户唯一身份的ID(微博是真实uid,QQ是加密的openID)以及用来识别身份的accessToken,当然还有昵称、头像、性别等有限资料, 对接第三方登录的关键就是如何确定用户是合法登录,如果确定这次登录的和上次登录的是同一个人并且不是假冒的。其实这个并不用我们特别操心,就以微博登录为例, 用户登录成功之后会回调一个code给我们,然后我们再拿code去微博那换取 accessToken ,如果这个code是用户乱填的,那这一关肯定过不了,所以,前面的担心有点多余,哈哈。

1. 认识Oauth2.0#

现在很多网站都要不管是为了引流也好,为了用户方便也好一般都有第三方账号登陆的需求,今天以QQ登陆为例,来实现一个最简单的第三方登陆。 目前主流的第三方登录都是依赖的Oauth2.0实现的,最常见的就是在各种中小型网站或者App中的QQ登录,微信登录等等。所以我建议想要学习和实现第三方登录同学去了解下这个协议。

从零玩转SpringSecurity+JWT整合前后端分离

从零玩转SpringSecurity+JWT整合前后端分离#

一、什么是Jwt?#

Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于 JSON 的开放标准

((RFC 7519).该 token 被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景

JWT 的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服

务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该 token 也可直接被用于

认证,也可被加密。

官网:https://jwt.io/introduction/

简单的说:jwt就是一个json字符串 它可以存储任何信息。

内置了校验-我们只需要请求时给到它生产出来的token令牌即可解析到我们存储进去的信息。

MyBatisCodeHelper-Pro插件破解版[2.8.2]

MyBatisCodeHelper-Pro插件破解版[2.8.2]#

介绍#

MyBatisCodeHelper-Pro是IDEA下的一个插件,功能类似mybatis plugin。

最新版本请使用:MyBatisCodeHelperPro (Marketplace Edition) 配合 激活码 使用,完美和谐。


以下为老的激活方式:

使用说明#

  1. 下载已破解的插件压缩包,一定注意校验sha1sum!!!
  2. 在IDEA中本地安装插件
  3. 激活方法(自2.7.3):IDEA顶部菜单:Tools -> MybatisCodeHelper -> Activation -> OfflineActivation,在offline key框输入任意字符串
  4. 激活方法(旧):IDEA顶部菜单:Tools -> MybatisCodeHelper -> offlineActivation,输入任意字符串

SpringBoot-MybatisPlus-Dynamic(多数据源)

前言#

​ 基于工作上班累死了。。。打开自己电脑 不知道干些啥 就康康 PL 网站康康 更新了啥

​ 咦~~~还挺多 看到了多数据源集成 挺简单的 来玩玩看看

简介#

dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据源的启动器。其支持 Jdk 1.7+, SpringBoot 1.4.x 1.5.x 2.x.x

从零玩转Git、GitHub、GitLab--基础理论

关于版本控制#

一、什么是版本控制#

  1. 版本控制(Version Control Systems)版本控制(Revision control)是一种软件工程技巧

  2. 在开发的过程中,确保由不同人所编辑的同一档案都得到更新

微服务网关鉴权JWT

第3章 微服务网关限流&鉴权#

课程目标#

  • 掌握微服务网关Gateway的系统搭建
  • 掌握网关限流的实现
  • 能够使用BCrypt实现对密码的加密与验证
  • 了解加密算法
  • 能够使用JWT实现微服务鉴权

1.微服务网关Gateway#

1.1 微服务网关概述#

​ 不同的微服务一般会有不同的网络地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题:

  • 客户端会多次请求不同的微服务,增加了客户端的复杂性
  • 存在跨域请求,在一定场景下处理相对复杂
  • 认证复杂,每个服务都需要独立认证
  • 难以重构,随着项目的迭代,可能需要重新划分微服务。例如,可能将多个服务合并成一个或者将一个服务拆分成多个。如果客户端直接与微服务通信,那么重构将会很难实施

以上这些问题可以借助网关解决。

网关是介于客户端和服务器端之间的中间层,所有的外部请求都会先经过 网关这一层。也就是说,API 的实现方面更多的考虑业务逻辑,而安全、性能、监控可以交由 网关来做,这样既提高业务灵活性又不缺安全性,典型的架构图如图所示:

SpringSecurity-OAuth2.0-授权模式演示

SpringSecurityOauth2架构#

介绍#

流程:

  1. 用户访问,此时没有Token。Oauth2RestTemplate会报错,这个报错信息会被Oauth2ClientContextFilter捕获 并重定向到认证服务器
  2. 认证服务器通过Authorization Endpoint进行授权,并通过AuthorizationServerTokenServices生成授权码并返 回给客户端
  3. 客户端拿到授权码去认证服务器通过Token Endpoint调用AuthorizationServerTokenServices生成Token并返 回给客户端
  4. 客户端拿到Token去资源服务器访问资源,一般会通过Oauth2AuthenticationManager调用 ResourceServerTokenServices进行校验。校验通过可以获取资源。

SpringCloud-ConfigServer配置中心

当然第一步还是得要了解啦!#

介绍#

做项目, 那么就少不了配置微服务架构中,配置文件众多,各个服务的配置文件也有可能不一样, Spring为我们提供了相应的配置中心组件--Spring Cloud config 他是一个配置管理中心,用于集中管理程序中各个环境下的配置,我们可以将配置通过git或svn等方式推送到我们的应用程序 同Eureka一样,他也分为server端与client端

优点#

提供 服务端 和 客户端 支持
集中式 管理分布式环境下的应用配置
基于 Spring 环境,无缝 与 Spring 应用集成
可用于 任何 语言开发的程序
默认实现基于 git 仓库,可以进行 版本管理
可替换 自定义实现