草庐IT

SpringBoot+Vue实现第三方支付宝登录(一)

helloliyh 2023-05-18 原文

1. 支付宝登录介绍(测试网站:地址

  通过第三方应用授权,系统服务商(ISV)在取得商户授权后,可以代商户调用支付宝开放接口,以完成相应的业务逻辑(如代替商户发起当面付的收单请求等)。

  授权采用标准的 OAuth 2.0 流程。要进行第三方代调用,ISV 需要在自己的应用中添加对应功能并获得商户授权;若第三方应用中有接入需签约的能力,则需要商户也完成相关签约。

  OAuth: OAuth(开放授权)是一个开放标准,允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站或分享他们数据的所有内容。

  用户使用支付宝账号登录开发者接入网站支付宝登录功能的网站,开发者获得用户的支付宝用户 ID,实现账户体系打通后快速登录。

  开发者可在自己 PC 站点快速获取支付宝会员的公开信息,提升用户体验。

  开发者可利用支付宝会员的公开信息,进行针对定向人群的精准营销,提供丰富多彩的产品能力。

2. 成为开发者(官方文档:地址

     开发者通过以下几个步骤,即可接入互联开放平台并获取接口权限。

2.1 登录开发平台

  系统服务商使用实名认证的支付宝账号登录 开放平台(open.alipay.com)

2.2 确认服务范围

  请系统服务商完成 提供第三方服务 + 自研开发服务 的服务范围认定。

  系统服务商在登录开放平台后:

    如果还未入驻平台,系统会引导开发者选择服务范围;

    如果系统服务商登录的账号还未完成实名认证,系统会引导当前登录者完成实名认证;

    如果已入驻平台但还未拓展身份的,请参见下方 扩展服务范围

  个人支付宝账号仅支持选择“自研开发服务”;企业支付宝账号如果在入驻时选择了 “自研开发服务”,在入驻完成后,可以根据需要拓展服务范围。

2.3 按要求填写个人信息

  系统服务商根据所选择的 提供第三方服务 + 自研开发服务 服务范围,填写相应的基础信息,请根据实际业务场景填写正确的信息。

  邮箱会默认填入开发者在实名认证时填写的邮箱(企业支付宝账号的邮箱信息无法修改);如果该企业账号为国际账号,手机号无需输入验证码进行验证,但是需要做邮箱验证。

  系统服务商如需在入驻后修改账户信息,请进入管理中心后,选择右上角的 账户信息,修改相应信息。

  填写信息完成后,请仔细阅读“开放平台服务协议”,并勾选 同意签署 后,才能点击 确定加入

2.4 成功入驻

  在填写完成并点击 确定加入 后,即系统服务商已入驻成为第三方服务开发者,在入驻成功提醒页面的倒计时结束后,页面会自动跳转至 管理中心

3. 网站应用及移动应用接入申请

  在完成入驻后,系统服务商即可创建第三方应用,第三方应用是系统服务商为商户服务的载体,可发布为服务,上架到服务市场进行售卖。

创建第三方应用请参见 创建第三方应用

  应用接入前,首先需进行申请,获得对应的appid与appkey,以保证后续流程中可正确对网站与用户进行验证与授权。

3.1 创建应用

1. 在完成入驻后,系统服务商即可创建第三方应用,登录 开放平台控制台 > 在 我的应用 中,选择 三网页&移动应用 > 点击 创建应用

2. 选择创建应用,选择需要创建的应用类型,我们以网站应用为例,点击创建网站应用后,按要求完善信息 命名规范

3. 网站信息填写完成,点击“创建应用”后,网站应用创建完成,在控制台可以查看到网站获取的appid,如下图所示:

备注:创建移动应用与网站应用步骤方法一致,在此不赘述。 

3.2 网站信息完善

     控制台点击创建好的应用,进入应用详情页面(应用创建完成后, 状态会显示审核中, 等待审核即可)。

     应用详情页面可点击“修改”来编辑应用“基本信息”。

3.3 完成网关、回调地址、加签方式等相关开发配置。应用网关授权回调地址加签方式 必填。

  进入开发设置中完成接口加签方式、IP白名单、应用网关、接口内容加密方式开发信息设置。详情请参见 配置应用环境

  接口加签方式:必填。用于保障商户应用和支付宝交互的安全性,配置详情参见 接口加签方式配置说明

  IP白名单:选填。用于保障用户资金安全,说明详情参见 IP 白名单接入指南

  应用网关:选填。用于接收支付宝异步通知消息,说明详情参见 应用网关。(  https://openapi.alipay.com/gateway.do  )

  接口内容加密方式:选填。用于加/解密 OpenAPI bizContent 报文内容及加/解密部分用户隐私信息,说明详情参见 接口内容加密方式

  授权回调地址:选填。第三方应用授权用户信息授权 后回调地址。授权链接中配置的 redirect_uri 的值必须与此值保持一致 (如:https://www.alipay.com) ,用户成功授权后将在该 url 后携带授权码等信

息并跳转至该页。当填入该地址时,系统会自动进行安全检测,详情请参考 安全检测

3.4 接口加签方式

工具下载

    • WINDOWS(windows 版本工具请不要安装在含有空格的目录路径下,否则会导致公私钥乱码的问题)
    • MAC_OSX

第一步:选择加签模式

  商户可根据接入产品需求选择 公钥证书模式公钥模式

  • 企业开发者若涉及 资金类支出接口 接入,必须使用 公钥证书 方式。
  • 个人开发者不涉及到资金类接口,建议使用 公钥模式 进行加签。

  更多公钥证书与公钥的区别详情请参见 公钥与公钥证书区别

第二步:获取应用公私钥/公钥证书

  根据需求商户可通过 支付宝开放平台开发助手 生成公私钥/公钥证书。

  公钥模式获取详情请参见 获取公钥

  公钥证书模式获取详情请参见 获取公钥证书

第三步:配置加签公钥/证书

  登录支付宝 开放平台,进入 对应应用详情页 > 设置> 开发设置 > 接口加签方式,点击 设置,上传获取到的 CSR 文件,

  以此来获取 应用公钥证书 支付宝根证书支付宝公钥证书 等信息,用于后续接口调用。

3.5 官网代码SDK下载 (SDK示例代码下载

3.6 到此准备工作结束,网站开发流程(在下篇介绍)

3.7 每个人做的项目需求不同,可能会出现不同的问题,文章仅供参考

3.8 参考资料官方文档

  网页&移动应用接入准备

  接口加签方式

  应用授权

3.9 SpringBoot+Vue实现第三方支付宝登录(二)

3.10 其他第三方登录方式:https://www.cnblogs.com/liyhbk/category/2089783.html

4. 源码购买

4.1 简洁版(淘宝源码

包含登录,第三方登录,跳转首页,SpringBoot+SpringSecurity+Mysql+Redis+Vue+ElementUI等

4.2 多功能版本(淘宝源码

包含登录,注册,第三方登录,完整的系统管理模块,系统工具模块,系统监控模块,个人中心等,SpringBoot+SpringSecurity+Mysql+Redis+Vue+ElementUI等

有关SpringBoot+Vue实现第三方支付宝登录(一)的更多相关文章

  1. ruby - 如何根据特征实现 FactoryGirl 的条件行为 - 2

    我有一个用户工厂。我希望默认情况下确认用户。但是鉴于unconfirmed特征,我不希望它们被确认。虽然我有一个基于实现细节而不是抽象的工作实现,但我想知道如何正确地做到这一点。factory:userdoafter(:create)do|user,evaluator|#unwantedimplementationdetailshereunlessFactoryGirl.factories[:user].defined_traits.map(&:name).include?(:unconfirmed)user.confirm!endendtrait:unconfirmeddoenden

  2. 华为OD机试用Python实现 -【明明的随机数】 2023Q1A - 2

    华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o

  3. 基于C#实现简易绘图工具【100010177】 - 2

    C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.

  4. MIMO-OFDM无线通信技术及MATLAB实现(1)无线信道:传播和衰落 - 2

     MIMO技术的优缺点优点通过下面三个增益来总体概括:阵列增益。阵列增益是指由于接收机通过对接收信号的相干合并而活得的平均SNR的提高。在发射机不知道信道信息的情况下,MIMO系统可以获得的阵列增益与接收天线数成正比复用增益。在采用空间复用方案的MIMO系统中,可以获得复用增益,即信道容量成倍增加。信道容量的增加与min(Nt,Nr)成正比分集增益。在采用空间分集方案的MIMO系统中,可以获得分集增益,即可靠性性能的改善。分集增益用独立衰落支路数来描述,即分集指数。在使用了空时编码的MIMO系统中,由于接收天线或发射天线之间的间距较远,可认为它们各自的大尺度衰落是相互独立的,因此分布式MIMO

  5. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  6. 【Java入门】使用Java实现文件夹的遍历 - 2

    遍历文件夹我们通常是使用递归进行操作,这种方式比较简单,也比较容易理解。本文为大家介绍另一种不使用递归的方式,由于没有使用递归,只用到了循环和集合,所以效率更高一些!一、使用递归遍历文件夹整体思路1、使用File封装初始目录,2、打印这个目录3、获取这个目录下所有的子文件和子目录的数组。4、遍历这个数组,取出每个File对象4-1、如果File是否是一个文件,打印4-2、否则就是一个目录,递归调用代码实现publicclassSearchFile{publicstaticvoidmain(String[]args){//初始目录Filedir=newFile("d:/Dev");Datebeg

  7. ruby - Arrays Sets 和 SortedSets 在 Ruby 中是如何实现的 - 2

    通常,数组被实现为内存块,集合被实现为HashMap,有序集合被实现为跳跃列表。在Ruby中也是如此吗?我正在尝试从性能和内存占用方面评估Ruby中不同容器的使用情况 最佳答案 数组是Ruby核心库的一部分。每个Ruby实现都有自己的数组实现。Ruby语言规范只规定了Ruby数组的行为,并没有规定任何特定的实现策略。它甚至没有指定任何会强制或至少建议特定实现策略的性能约束。然而,大多数Rubyist对数组的性能特征有一些期望,这会迫使不符合它们的实现变得默默无闻,因为实际上没有人会使用它:插入、前置或追加以及删除元素的最坏情况步骤复

  8. ruby - "public/protected/private"方法是如何实现的,我该如何模拟它? - 2

    在ruby中,你可以这样做:classThingpublicdeff1puts"f1"endprivatedeff2puts"f2"endpublicdeff3puts"f3"endprivatedeff4puts"f4"endend现在f1和f3是公共(public)的,f2和f4是私有(private)的。内部发生了什么,允许您调用一个类方法,然后更改方法定义?我怎样才能实现相同的功能(表面上是创建我自己的java之类的注释)例如...classThingfundeff1puts"hey"endnotfundeff2puts"hey"endendfun和notfun将更改以下函数定

  9. ruby-on-rails - 与 ActiveMerchant 一起使用的最佳支付网关是什么? - 2

    我需要使用ActiveMerchant库在我们的一个Rails应用程序中设置支付解决方案。尽管这个问题非常主观,但人们对主要网关(BrainTree、Authorize.net等)的体验如何?它必须:处理定期付款。有能力记入个人帐户。能够取消付款。有办法存储用户的付款详细信息(例如Authotize.netsCIM)。干杯 最佳答案 ActiveMerchant很棒,但在过去一年左右的时间里,我在使用它时发现了一些问题。首先,虽然某些网关可能会得到“支持”——但并非所有功能都包含在内。查看功能矩阵以确保完全支持您选择的网关-http

  10. ruby - 实现k最近邻需要哪些数据? - 2

    我目前有一个reddit克隆类型的网站。我正在尝试根据我的用户之前喜欢的帖子推荐帖子。看起来K最近邻或k均值是执行此操作的最佳方法。我似乎无法理解如何实际实现它。我看过一些数学公式(例如k表示维基百科页面),但它们对我来说并没有真正意义。有人可以推荐一些伪代码,或者可以查看的地方,以便我更好地了解如何执行此操作吗? 最佳答案 K最近邻(又名KNN)是一种分类算法。基本上,您采用包含N个项目的训练组并对它们进行分类。如何对它们进行分类完全取决于您的数据,以及您认为该数据的重要分类特征是什么。在您的示例中,这可能是帖子类别、谁发布了该项

随机推荐