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. 转载 Android 多线程处理之多线程用法大集合
  2. Java8 Time
  3. 连接相机无法识别_春节用相机拍照,如何快速发朋友圈?
  4. android文件读写操作布局文件代码,android实现文件读写功能
  5. 虚拟机NAT模式下 Host ‘192.168.x.1‘ is not allowed to connect to this MySQL server 问题解决!
  6. 信息传递(luogu 2661)
  7. 无法远程xp服务器,五步快速处理在WinXP下IIS无法远程访问的问题
  8. synchronized 关键字的底层原理
  9. Java基础之StringBuffer和StringBuilder的区别
  10. iphone绕过id_破解苹果安卓手机屏幕锁ID锁 极品神器
  11. 87-分布式前端微信操作
  12. 2022电商人必备的7大工具推荐
  13. 大学生创业实战 - 代充的套利故事
  14. Java 征途:行者的地图(推荐好文)
  15. ENVI5.3.1 去除影像四周的黑色背景
  16. 微信小程序之九宫格布局方案
  17. 微信JS-SDK的PHP demo页面,解决Internal error 500错误
  18. functional.partial
  19. 一次HTTP请求的编解码。
  20. GD32F303的SPI初始化完毕,发送SPI数据后。如果想要改变频率SPEED,必须重新初始化SPI时钟。否则SPI将失效

热门文章

  1. 从PPT忽悠到越来越落地,大数据产业贵阳先行其他地方政府也要跟上!
  2. java计算机毕业设计培训中心管理系统源码+系统+数据库+lw文档+mybatis+运行部署
  3. 银河护卫队高清 hd在线观看
  4. Dynamics CRM开发 - 注册Plugin 插件
  5. windows 10 Android SDK下载安装和配置环境
  6. 用Java语言编写一个答答租车系统
  7. iOS开发之appCode工具
  8. 苹果经典提示音_“今天的不开心就止于此吧”,也可以是你的iPhone充电提示音了...
  9. jumpserver 使用教程_jumpserver的使用
  10. 机器学习编程作业ex8(matlab/octave实现)-吴恩达coursera 异常检测与推荐系统/协同过滤