SpringCloud Alibaba微服务实战三十七 - Oauth2自定义登录接口
Posted 飘渺Jam
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud Alibaba微服务实战三十七 - Oauth2自定义登录接口相关的知识,希望对你有一定的参考价值。
大家好,我是飘渺。
有不少人私下问我,为什么SpringCloud alibaba实战系列不更新了,主要是因为大部分核心功能都已经讲完了,剩下的基本是属于业务功能开发了,需要根据实际业务扩展。
今天更新文章的原因是粉丝提了个问题:如何实现Oauth2认证服务器自定义登录接口以及返回自定义格式? 这里我给大家分享一个简单且实用的方法,既可以灵活定制登录参数也可以自行组装返回结果。
实现方案
我们知道,认证服务器生成token的入口是TokenEndpoint#postAccessToken(Principal principal, @RequestParam Map<String, String> parameters)
,那我们就可以直接在认证服务器自定义一个登录接口,然后组装好TokenEndpoint#postAccessToken()
需要的参数,直接调用它生成token后再封装成我们需要的格式即可。
接下来我们直接进入实战:
1. 定义登录参数
/**
* 自定义登录参数
* @author JAVA日知录
* @date 2022/5/14 09:23
*/
@Data
public class LoginRequest
private String userName;
private String password;
private String grantType;
private String mobile;
private String smsCode;
为了兼容密码模式和自定义的短信验证码模式&
以上是关于SpringCloud Alibaba微服务实战三十七 - Oauth2自定义登录接口的主要内容,如果未能解决你的问题,请参考以下文章
SpringCloud Alibaba微服务实战三十一 - 业务日志组件
SpringCloud Alibaba微服务实战三十三 - 集成灰度发布
SpringCloud Alibaba微服务实战三十四 - 隐私接口禁止外部访问
SpringCloud Alibaba微服务实战三十六 - 这大概算是使用Feign的正确姿势。