调用第三方接口大致流程

调用第三方接口大致流程下面以风控为例,业务是调用第三方接口获取支付宝报告天机支付宝获取流程:1本质:中转站:前台把参数传给我,我接受参数后传给天机,天机在传给支付宝,最后获取数据,在这个过程中   我们和天机都充当的是中转站的角色。2流程:a前台传客户的基本信息参数    b后台接受参数,传给天机,天机返回淘宝的认证地址链接,后台把链接返回给前台;    c前台打开链接,进入认证页面,进行认…

大家好,又见面了,我是你们的朋友全栈君。下面以风控为例,业务是调用第三方接口获取支付宝报告

天机支付宝获取流程:

1 本质:中转站:前台把参数传给我,我接受参数后传给天机,天机在传给支付宝,最后获取数据,在这个过程中

      我们和天机都充当的是中转站的角色。

2 流程:a 前台传客户的基本信息参数

       b 后台接受参数,传给天机,天机返回淘宝的认证地址链接,后台把链接返回给前台;

       c 前台打开链接,进入认证页面,进行认证,天机通过后台写的回调函数向后台返回认证结果,后台把结果返回给前台;

       d 当天机返回的结果是认证成功,就再次调用天机获取认证链接的接口,这其中要做参数转换,虽然调的接口一样,但参数不同,这一步的主要作用是抓取报告,这其中后台的回调函数天机依然在调;

       e 当天机返回的状态为抓取成功时,就开始调获取报告的接口,进行报告的获取;

3 难点:一个完整的流程分几步完成,而且要依据状态提示操作,造成如下问题:

      (1)一个客户没有进行完,另一个客户进来了,造成数据混淆;

    (2)前端  后端  天机这三方如何协调一致;

     解决:对于第一个问题:a 在控制层添加如下注解:@Scope(“prototype”),改注解的作用是每发一次请求就是一个新的controller,互不干扰;

                           b 把诸如状态等需要共享的数据建表存储,然后查表;

               对于第二个问题:从前端发第一次请求获取认证链接地址的时候,就给前端返回一个该客户的唯一标识,然后下面的每一次请求都需要传这个唯一标识进行区别;

     

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137458.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MessageDigest简单介绍

    MessageDigest简单介绍本文博客原文參考文章:http://blog.sina.com.cn/s/blog_4f36423201000c1e.html一、概述java.security.MessageDigest类用于为应用

    2022年6月30日
    20
  • 微信公众平台定时群发系统(小懒人定时精灵篇)

    微信公众平台定时群发系统(小懒人定时精灵篇)  所谓微信公众平台定时群发系统就是在你一个时间内把你所要发布的文章都填好,然后在选择群发时间段。我最近在使用“小懒人定时精灵”,使用步骤方便,省了我好大部分的时间,听他们官方说现在正在丰富内容,期待以后有更多的功能。“小懒人定时精灵“解救了那些傻傻地守在电脑旁发送微信的人们,现在微信公众平台的推送也能定时群发了。预先到微信后台编辑一条包括文字、图片、语音、视频、图集,然后到小懒…

    2022年6月3日
    48
  • 关于mysql的时区(下):如何设置mysql的时区

    关于mysql的时区(下):如何设置mysql的时区一、如何设置mysql时区1、命令1)查时区:showvariableslike’%time_zone%’返回有2行记录,要看time_zone变量的值,不需要看system_time_zone。若值为SYSTEM表示取值跟system_time_zone保持一致。system_time_zone的值是启动mysql服务的时候读取了操作系统的值,除非重新启动mysql服务重读否则这个值不变2)设置会话时区:settime_zone=’+8:00’仅对当前会话有效,在当前窗口立即生效

    2025年6月15日
    3
  • 离散实验 判断集合之间是单射,满射还是双射

    离散实验 判断集合之间是单射,满射还是双射通过C++实现集合间映射关系判断思路:创建判断两个集合之间是否是单射,满射,双射的函数,同时也分别创建三个函数,里面存放两集合间的映射关系,再通过刚刚创建的判断函数,进行验证是否满足条件。涉及的数学知识1.单射:设f是由集合A到集合B的映射,如果所有x,y∈A,且x≠y,都有f(x)≠f(y),则称f为由A到B的单射。2.满射:如果每个可能的像至少有一个变量映射其上(即像集合B中的每个元素在A中都有一个或一个以上的原像),或者说值域任何元素都有至少有一个变量与之对应,那这个映射就叫做满射。3.双

    2022年5月1日
    119
  • Npoi操作excel

    Npoi操作excel

    2021年8月20日
    69
  • vuex使用教程(最好最详细的乒乓教程)

    最详细的Vuex教程什么是Vuex?vuex是一个专门为vue.js设计的集中式状态管理架构。状态?我把它理解为在data中的属性需要共享给其他vue组件使用的部分,就叫做状态。简单的说就是data中需要共用的属性。引入Vuex(前提是已经用Vue脚手架工具构建好项目)1、利用npm包管理工具,进行安装vuex。在控制命令行中输入下边的命令就可以了。npminstallvuex

    2022年4月14日
    116

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号