# easy-login **Repository Path**: ljlToTlj/easy-login ## Basic Information - **Project Name**: easy-login - **Description**: 一个封装了登录的框架,支持密码、本机号码一键登录、微信授权登录(小程序、APP、公众号)、支付宝授权登录(小程序)等 - **Primary Language**: Java - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 8 - **Created**: 2025-06-05 - **Last Updated**: 2025-06-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 一个封装了登录的框架,支持密码、本机号码一键登录、微信授权登录(小程序、APP、公众号)、支付宝授权登录(小程序)等 ### 登录方式支持 | 登录方式 | 已实现 | | -------------------------- |--------| | 用户名+密码 | √ | | 手机号+密码 | √ | | 邮箱+密码 | √ | | 本机号码一键登录 | √ | | 手机号+验证码 | √ | | 邮箱+验证码 | √ | | 微信授权登录(APP) | √ | | 微信授权登录(小程序) | √ | | 微信授权登录(公众号) | √ | | 支付宝授权登录(小程序) | √ | | QQ授权登录 | √ | | 新浪微博授权登录 | ✘ | | 国外(如google)授权登录 | ✘ | ### 模块说明 ```lua easy-login ├── easy-login-core -- 核心代码 └── ali -- 支付宝授权登录 └── email -- 邮箱登录 └── mobile -- 手机号登录 └── password -- 密码登录 └── wx -- 微信授权登录 └── repository -- 持久化信息接口 └── easy-login-spring-boot-starter -- 整合springboot代码 └── easy-login-springboot-demo -- 在springboot中使用easy-login的demo代码 ``` ### SpringBoot自动装配条件 | 登录方式 | 实现类 | 装配条件 | | -------------------------- | ----------------------------- |---------------------------------------------| | 用户名+密码 | UsernamePasswordClient | 实现PasswordRepository | | 手机号+密码 | MobilePasswordClient | 实现PasswordRepository | | 邮箱+密码 | EmailPasswordClient | 实现PasswordRepository | | 本机号码一键登录 | LocalMobileClient | 配置easylogin.localMobile.accessKeyId | | 手机号+验证码 | MobileCodeClient | 实现VerifycodeRepository | | 手机号+验证码+绑定授权 | MobileCodeBindClient | 实现VerifycodeRepository | | 邮箱+验证码 | EmailCodeClient | 实现VerifycodeRepository | | 邮箱+验证码+绑定授权 | EmailCodeBindClient | 实现VerifycodeRepository | | 微信授权登录(APP) | WeixinAppClient | 配置easylogin.weixinApp.appid | | 微信授权登录(小程序) | WeixinMiniappClient | 配置easylogin.weixinMiniapp.appid | | 微信授权登录(小程序) | WeixinMiniappMobileClient | 配置easylogin.weixinMiniappMobile.appid | | 微信授权登录(公众号) | WeixinMpClient | 配置easylogin.weixinMp.appid | | 支付宝授权登录(小程序) | AlipayMiniappClient | 配置easylogin.alipayMiniapp.appid | | 支付宝授权登录(小程序) | AlipayMiniappMobileClient | 配置easylogin.alipayMiniappMobile.appid | | QQ授权登录 | QQClient | 配置easylogin.qq.appid | ### 使用说明 #### 1:编译源码 mvn install,使用maven将源码编译成jar包并且安装到本地仓库,如有私服也可以部署到私服 #### 2:jar包引用(如使用微信授权登录(小程序)),其他可参考easy-login-core的pom配置 ``` com.jqdi easy-login-spring-boot-starter 1.0.0 com.github.binarywang weixin-java-miniapp 4.6.0 provided ``` #### 3:springboot yml 配置(如使用微信授权登录(小程序)),其他可参考easy-login-springboot-demo的pom配置 ``` easylogin: weixinMiniappMobile: # 微信小程序登录方式二 appid: 1111 #微信小程序的appid secret: 1111 #微信小程序的Secret ``` #### 4:在代码中使用 ``` @Autowired @Qualifier(LoginType.WEIXIN_MINIAPP_MOBILE) private LoginClient weixinMiniappMobileClient; public String loginByWeixinMiniappMobile(String wxcode) { String userId = weixinMiniappMobileClient.login(null, null, wxcode); String token = "generate token with userId:" + userId; return token; } ``` ### 开源共建 #### 开源协议 easy-login 开源软件遵循 [Apache 2.0 协议](https://www.apache.org/licenses/LICENSE-2.0.html)。 允许商业使用,但务必保留类作者、Copyright 信息。 #### 其他说明 1. 联系作者 897665787@qq.com