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. 网站集成第三方登录-微信登录

    网站集成第三方登录-微信登录 课程介绍 1. 第三方登录引入介绍; 2. 网站微信登录原理(重点);oauth2 3. 网站微信登录具体步骤(重点); 4. 常见疑问解答; 5. 功能实现 ...

  2. 友盟集成第三方登录--微信、QQ实现

    友盟集成了第三方登录,本给我们带来便利,但是文档只描述了集成方式,出现问题,发现还得自己各种baidu,这里总结自己遇到的一些坑,以防下次再踩. 友盟集成第三方微信登录: 友盟集成方案参考:http: ...

  3. Springboot集成第三方登录(facebook,linkedin,github)

    OAuth2.0的第三方登录集成 本文处理方式适用于java服务端REST API 一,了解OAuth2.0 OAuth2.0是一个关于授权(authorization)的开放网络标准,在全世界得到广 ...

  4. SpringBoot 集成第三方聚合支付 微信、支付宝

    SpringBoot 集成第三方聚合支付 1. 创建Spring Boot项目 2. 添加依赖 3. 配置支付宝.微信 4. 实现支付接口 5. 实现支付服务 6. 实现支付回调接口 7. 测试支付 ...

  5. SpringBoot项目中集成第三方登录功能

    SpringBoot项目中集成第三方登录功能 引言 1 环境准备 2 代码实现 3 第三方平台认证申请 4 打包和部署项目 5 第三方平台登录认证测试 6 参考文章 引言 最近想把自己在公众号上介绍过 ...

  6. 使用cocoaPods一键集成第三方登录(新浪微博,qq,微信)

    第三方登录是现在app很常用的功能,而这个功能我已经写过两三次了...每次都写大同小异的代码真的是很痛苦,而且每次都要根据说明去添加那些依赖库,配置linkFlag什么的,完全是体力活,所以一直想把这 ...

  7. Spring Boot集成第三方登录之微信登录

    Spring Boot集成第三方登录之微信登录 准备工作 注册 创建网站应用 网站应用开发指南 授权流程 请求CODE 获取access_token 使用access_token调用接口 获取用户个人 ...

  8. 【SpringBoot学习】46、SpringBoot 集成 Uniapp 实现微信公众号授权登录

    文章目录 一.公众号环境搭建 二.Spring Boot 集成微信公众号 1.application.yml 微信配置 2.控制层接口 三.Uniapp 实现授权登录 一.公众号环境搭建 本篇文章使用 ...

  9. android 第三方登录界面,Android App集成第三方登录与换肤指南

    Android App集成第三方登录与换肤指南 文档编辑 概述 本文主要是介绍了如何通过开源框架快速支持QQ和微信登录,并介绍了如何实现app快速换肤 QQ登录接入 APP要支持QQ登录,需要先到腾讯 ...

最新文章

  1. 权限表管理之更新权限表数据
  2. java中native的用法[转]
  3. 用MFC显示一张图片
  4. Asp.Net iframe Cookie 域 的问题!
  5. [pytorch、学习] - 3.7 softmax回归的简洁实现
  6. C语言:一种通用的程序设计语言
  7. 使用python读取iphone文件_如何在连接的iPhone上用Python从windows7访问照片?
  8. 利用 Conda 尝鲜 Python 3.10 不一样的特性 快来试试
  9. hadoop1.X安装
  10. Windows Boot Manager改成中文菜单
  11. vbm 分析_vbm8_r435 脑功能数据分析处理实用软件,基于SPM 来运行 matlab 238万源代码下载- www.pudn.com...
  12. 《东京食尸鬼》观后感
  13. 利用支付宝短信服务接口 实现手机号 验证码登录Demo
  14. win7计算机管理无用户账户,win7系统右键没有以管理员身份运行解决方法
  15. fatal: The remote end hung up unexpectedly解决办法
  16. linux 汇编 `.eabi_attribute',交叉编译arm-none-eabi-gcc编译汇编文件(startup_stm32f10x_hd.S)遇到的有关问题(2)...
  17. 小括号在c语言的作用,C语言的小括号----其实是逗号运算符
  18. U盘文件丢失了怎么办?一串英文字符即可快速帮你找回,秒学!
  19. 免登录采集淘宝商品详情的方法
  20. WINFORM时间控件(DATATIMEPICKER)的显示格式设置

热门文章

  1. SpringMVC 验证码
  2. CI持续集成、持续交付、持续部署
  3. 100 条经典C语言笔试题目
  4. 第一章:Java语言的前世今生-种族天赋:大谈Java成功之道
  5. Linux中的java环境搭建
  6. 【Python】爬虫获取购物网站的商品信息、商品图片
  7. python 读取PDF(tabula和pdfminer和pdfplumber的简单操作)
  8. MySQL 动态标签
  9. signature=e260e08d0d5973d18c37cc596c51cae8,女性不妊症領域におけるレーザー手術の現況...
  10. 06-3. 公路村村通(30)