SpringBoot 集成第三方登录(微信、支付宝)
SpringBoot 集成第三方登录
- 微信
- 1. 登录微信开发平台
- 1.在微信开发平台里面获取我们需要的AppID、AppSecret 。
- 2.创建配置类
- 3. 开始自己的业务模块
- 1. 方便测试
- 支付宝
- 1. 登录支付宝开发平台
- 1.在支付宝开发平台里,进入控制台查看自己创建的应用。
- 2. 获取公钥、私钥或者证书模式下获取所需的三个证书
- 2. 导入依赖
- 3. 创建配置类
- 4.业务模块
- 1.创建业务接口
- 2. 创建接口实现类
微信
不了解微信登录过程的可以看一下微信官方文档。
1. 登录微信开发平台
1.在微信开发平台里面获取我们需要的AppID、AppSecret 。
微信开发平台
2.创建配置类
/*** @Author ddz* @ClassName WxAppConfig* @Description* @Date 2021/8/12 14:50* @Version 1.0**/
public class WxAppConfig {/*** appID*/public static String appID = "AppID";/*** AppSecret*/public static String appSecret = "AppSecret";}
3. 开始自己的业务模块
1. 方便测试
支付宝
1. 登录支付宝开发平台
1.在支付宝开发平台里,进入控制台查看自己创建的应用。
支付宝开发平台
获取appid和设置授权回调地址
授权回调地址必须和我们打包时设置的一样,这里我们用测试的链接来测试,在测试的链接后面有个拼接的参数 redirect_uri 必须和设置的一样,不然授权后回调访问不到。
2. 获取公钥、私钥或者证书模式下获取所需的三个证书
这些获取方法在支付宝支付里面有讲到,不知道的可以去看一下获取的流程。
2. 导入依赖
<!-- https://mvnrepository.com/artifact/com.alipay.sdk/alipay-sdk-java -->
<dependency><groupId>com.alipay.sdk</groupId><artifactId>alipay-sdk-java</artifactId><version>4.15.12.ALL</version>
</dependency>
3. 创建配置类
package com.communist.common.config;/**** 支付宝配置* @author Lenovo*/
public class AlipayConfig {/*** 应用ID,您的APPID,收款账号既是您的APPID对应支付宝账号*/public static String APP_ID = "APPID";/*** AES 密钥*/public static String ENCRYPT_KEY = "AES加密密钥";/*** 商户私钥,您的PKCS8格式RSA2私钥,这些就是我们刚才设置的*/public static String MERCHANT_PRIVATE_KEY = "应用私钥";/*** 支付宝公钥,查看地址:https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。,这些就是我们刚才设置的*/public static String ALIPAY_PUBLIC_KEY = "支付宝公钥";/*** 异步通知,再这里我们设计自己的后台代码*/public static String notify_url = "异步回调";/*** 页面跳转同步通知页面路径 需http://格式的完整路径,不能加?id=123这类自定义参数,必须外网可以正常访问*/public static String return_url = "";/*** 支付宝网关*/public static String GATEWAYURL = "https://openapi.alipay.com/gateway.do";/*** 签名方式 固定*/public static String SIGN_TYPE = "RSA2";/*** 字符编码格式 固定*/public static String CHARSET = "utf-8";
}
4.业务模块
1.创建业务接口
/*** 支付宝登录*** @param authCode @return*/Result aliLogin(String authCode) ;
2. 创建接口实现类
/*** 支付宝登录** @param authCode @return*/@Overridepublic Result aliLogin(String authCode) {// 获取AuthCode 等,具体可以获取哪些数据参考支付宝官方接口文档,这里只需要使用auth_codeAssert.isTrue(StrUtil.isNotEmpty(authCode), "auth_code is null");// 构建clientDefaultAlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.GATEWAYURL, AlipayConfig.APP_ID, AlipayConfig.MERCHANT_PRIVATE_KEY, "json", AlipayConfig.CHARSET, AlipayConfig.ALIPAY_PUBLIC_KEY, AlipayConfig.SIGN_TYPE);// 通过authCode获取accessTokenAlipaySystemOauthTokenRequest oauthTokenRequest = new AlipaySystemOauthTokenRequest();oauthTokenRequest.setCode(authCode);oauthTokenRequest.setGrantType("authorization_code");AlipaySystemOauthTokenResponse oauthTokenResponse = alipayClient.certificateExecute(oauthTokenRequest);String accessToken = oauthTokenResponse.getAccessToken();Assert.isTrue(StrUtil.isNotEmpty(accessToken), "接入支付宝登录认证出现错误,无法获取到accessToken");// 根据accessToken获取用户信息AlipayUserInfoShareResponse userInfoResponse = alipayClient.certificateExecute(new AlipayUserInfoShareRequest(), accessToken);Assert.isTrue(userInfoResponse.isSuccess(), "无法获取用户信息!");// userInfoResponse 中有哪些用户信息参考支付宝官方接口文档,这里演示如下几个// 下面判断是否授权过、写自己的业务逻辑return Result.ok();}
SpringBoot 集成第三方登录(微信、支付宝)相关推荐
- 网站集成第三方登录-微信登录
网站集成第三方登录-微信登录 课程介绍 1. 第三方登录引入介绍; 2. 网站微信登录原理(重点);oauth2 3. 网站微信登录具体步骤(重点); 4. 常见疑问解答; 5. 功能实现 ...
- 友盟集成第三方登录--微信、QQ实现
友盟集成了第三方登录,本给我们带来便利,但是文档只描述了集成方式,出现问题,发现还得自己各种baidu,这里总结自己遇到的一些坑,以防下次再踩. 友盟集成第三方微信登录: 友盟集成方案参考:http: ...
- Springboot集成第三方登录(facebook,linkedin,github)
OAuth2.0的第三方登录集成 本文处理方式适用于java服务端REST API 一,了解OAuth2.0 OAuth2.0是一个关于授权(authorization)的开放网络标准,在全世界得到广 ...
- SpringBoot 集成第三方聚合支付 微信、支付宝
SpringBoot 集成第三方聚合支付 1. 创建Spring Boot项目 2. 添加依赖 3. 配置支付宝.微信 4. 实现支付接口 5. 实现支付服务 6. 实现支付回调接口 7. 测试支付 ...
- SpringBoot项目中集成第三方登录功能
SpringBoot项目中集成第三方登录功能 引言 1 环境准备 2 代码实现 3 第三方平台认证申请 4 打包和部署项目 5 第三方平台登录认证测试 6 参考文章 引言 最近想把自己在公众号上介绍过 ...
- 使用cocoaPods一键集成第三方登录(新浪微博,qq,微信)
第三方登录是现在app很常用的功能,而这个功能我已经写过两三次了...每次都写大同小异的代码真的是很痛苦,而且每次都要根据说明去添加那些依赖库,配置linkFlag什么的,完全是体力活,所以一直想把这 ...
- Spring Boot集成第三方登录之微信登录
Spring Boot集成第三方登录之微信登录 准备工作 注册 创建网站应用 网站应用开发指南 授权流程 请求CODE 获取access_token 使用access_token调用接口 获取用户个人 ...
- 【SpringBoot学习】46、SpringBoot 集成 Uniapp 实现微信公众号授权登录
文章目录 一.公众号环境搭建 二.Spring Boot 集成微信公众号 1.application.yml 微信配置 2.控制层接口 三.Uniapp 实现授权登录 一.公众号环境搭建 本篇文章使用 ...
- android 第三方登录界面,Android App集成第三方登录与换肤指南
Android App集成第三方登录与换肤指南 文档编辑 概述 本文主要是介绍了如何通过开源框架快速支持QQ和微信登录,并介绍了如何实现app快速换肤 QQ登录接入 APP要支持QQ登录,需要先到腾讯 ...
最新文章
- 权限表管理之更新权限表数据
- java中native的用法[转]
- 用MFC显示一张图片
- Asp.Net iframe Cookie 域 的问题!
- [pytorch、学习] - 3.7 softmax回归的简洁实现
- C语言:一种通用的程序设计语言
- 使用python读取iphone文件_如何在连接的iPhone上用Python从windows7访问照片?
- 利用 Conda 尝鲜 Python 3.10 不一样的特性 快来试试
- hadoop1.X安装
- Windows Boot Manager改成中文菜单
- vbm 分析_vbm8_r435 脑功能数据分析处理实用软件,基于SPM 来运行 matlab 238万源代码下载- www.pudn.com...
- 《东京食尸鬼》观后感
- 利用支付宝短信服务接口 实现手机号 验证码登录Demo
- win7计算机管理无用户账户,win7系统右键没有以管理员身份运行解决方法
- fatal: The remote end hung up unexpectedly解决办法
- linux 汇编 `.eabi_attribute',交叉编译arm-none-eabi-gcc编译汇编文件(startup_stm32f10x_hd.S)遇到的有关问题(2)...
- 小括号在c语言的作用,C语言的小括号----其实是逗号运算符
- U盘文件丢失了怎么办?一串英文字符即可快速帮你找回,秒学!
- 免登录采集淘宝商品详情的方法
- WINFORM时间控件(DATATIMEPICKER)的显示格式设置
热门文章
- SpringMVC 验证码
- CI持续集成、持续交付、持续部署
- 100 条经典C语言笔试题目
- 第一章:Java语言的前世今生-种族天赋:大谈Java成功之道
- Linux中的java环境搭建
- 【Python】爬虫获取购物网站的商品信息、商品图片
- python 读取PDF(tabula和pdfminer和pdfplumber的简单操作)
- MySQL 动态标签
- signature=e260e08d0d5973d18c37cc596c51cae8,女性不妊症領域におけるレーザー手術の現況...
- 06-3. 公路村村通(30)