CN112528201A - 调用第三方平台的方法、装置、计算机设备和存储介质 - Google Patents
调用第三方平台的方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN112528201A CN112528201A CN202011496953.3A CN202011496953A CN112528201A CN 112528201 A CN112528201 A CN 112528201A CN 202011496953 A CN202011496953 A CN 202011496953A CN 112528201 A CN112528201 A CN 112528201A
- Authority
- CN
- China
- Prior art keywords
- party platform
- request
- information
- web page
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/42—Syntactic analysis
- G06F8/427—Parsing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及开发辅助技术领域,提供了一种调用第三方平台的方法、装置、计算机设备和存储介质,包括:基于Velocity模板引擎,新增一个Web页面;基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。基于前端新增的Web页面实现与后端的分离,直接通过前端的Web页面实现第三方平台的调用,而无需进行后端主流程业务代码的修改,减少代码维护成本。
Description
技术领域
本申请涉及开发辅助的技术领域,特别涉及一种调用第三方平台的方法、装置、计算机设备和存储介质。
背景技术
随着时代和业务的拓展,流程系统对接繁多的外部系统。涉及的交互方式也包罗万象,针对不同渠道以及系统所采用的接口调用方式也随之增加。目前,增加调用外部第三方平台的接口时,需要修改主流程业务代码,会增加业务系统代码维护的人力成本。
发明内容
本申请的主要目的为提供一种调用第三方平台的方法、装置、计算机设备和存储介质,旨在克服目前调用第三方平台时需要修改主流程业务代码的缺陷。
为实现上述目的,本申请提供了一种调用第三方平台的方法,应用于前端,所述前端为客户端的前台,包括以下步骤:
基于Velocity模板引擎,新增一个Web页面;
基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;其中,所述后端为所述客户端的后台;
在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;
在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。
进一步地,所述基于Velocity模板引擎,新增一个Web页面的步骤之后,还包括:
获取所述Web页面的布局规则;
根据所述Web页面的布局规则,在预设的数据库中获取验证Web页面的规则列表;其中,预设的数据库中存储有布局规则与验证Web页面的规则列表的对应关系,所述验证Web页面的规则列表中包括所要验证的Web页面的页面元素以及页面元素的规则;
获取所述Web页面中的目标页面元素,以及所述Web页面中的目标页面元素的规则;
判断所述Web页面中的目标页面元素的规则与所述验证Web页面的规则列表中页面元素的规则是否一致;
若一致,则验证通过。
进一步地,所述返回格式化至所述后端的步骤之后,还包括:
获取所述后端的主流程业务代码;
验证所述主流程业务代码是否发生改变;
若未改变,则执行在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据的步骤。
进一步地,所述验证所述主流程业务代码是否发生改变的步骤,包括:
对所述主流程业务代码进行哈希计算,得到对应的第一哈希值;
判断所述第一哈希值与预存的第二哈希值是否一致;其中,所述第二哈希值为新增所述web页面之前的主流程业务代码进行哈希计算所得;
若一致,则判定所述主流程业务代码未发生改变。
进一步地,所述所述基于Velocity模板引擎,新增一个Web页面的步骤之后,包括:
获取开发者的开发者信息;其中,所述开发者信息包括多个;
按照预设规则,对多个所述开发者信息进行排序;
将排序后的所述开发者信息依次进行拼接,得到第一拼接字符串;
对所述第一拼接字符串进行哈希计算得到对应的第三哈希值,并将所述第三哈希值编码成第一字符串;
在新增的所述Web页面中新增一个开发者字段,并将所述第一字符串赋值给所述开发者字段。
进一步地,所述基于后端获取第三方平台的信息的步骤,包括:
基于所述后端获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
基于所述后端解析所述接入请求中携带的http请求信息,得到请求行;
基于所述后端从所述请求行中获取所述第三方平台的请求方式、地址。
进一步地,所述第三方平台的信息还包括第三方平台的平台信息;
所述后端获取第三方平台的信息的步骤,具体包括:
获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
解析所述接入请求中携带的http请求信息,得到请求行、请求头以及请求体;其中,所述请求头以及所述请求体经过所述第三方平台加密处理;
从所述请求行中获取所述第三方平台的请求方式、地址;
将所述请求方式以及所述地址进行拼接并进行哈希计算,得到第四哈希值;
基于所述第四哈希值,对所述请求头进行解密,得到所述请求头中包含的第一密码以及多个特征信息字段;
基于所述请求方式,在数据库中获取对应的目标特征信息字段;其中,数据库中预存有请求方式与目标特征信息字段的对应关系;
从多个所述特征信息字段中获取所述目标特征信息字段对应的目标信息;
按照预设规则,将所述目标信息与所述第一密码进行组合,得到第二密码;
基于所述第二密码,对所述请求体进行解密,得到所述请求体中包含的所述第三方平台的平台信息。
本申请还提供了一种调用第三方平台的装置,应用于前端,所述前端为客户端的前台,包括:
新增单元,用于基于Velocity模板引擎,新增一个Web页面;
第一获取单元,用于基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;其中,所述后端为所述客户端的后台;
配置单元,用于在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;
调用单元,用于在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请提供的调用第三方平台的方法、装置、计算机设备和存储介质,基于Velocity模板引擎,新增一个Web页面;基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。基于前端新增的Web页面实现与后端的分离,直接通过前端的Web页面实现第三方平台的调用,而无需进行后端主流程业务代码的修改,减少代码维护成本。
附图说明
图1是本申请一实施例中调用第三方平台的方法步骤示意图;
图2是本申请一实施例中调用第三方平台的装置结构框图;
图3为本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例中提供了一种调用第三方平台的方法,应用于前端,所述前端为客户端的前台,包括以下步骤:
步骤S1,基于Velocity模板引擎,新增一个Web页面;
步骤S2,基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;其中,所述后端为所述客户端的后台;
步骤S3,在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;
步骤S4,在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。
在本实施例中,上述方法应用于在添加第三方平台的支付公司或渠道时,为了不修改主流程系统的业务代码,减少代码维护成本。
如上述步骤S1所述的,上述Velocity模板引擎是一个基于Java的模板引擎,通过特定的语法,Velocity可以获取在java语言中定义的对象,从而实现界面和后端java代码的真正分离,使得前端开发人员可以在Web页面实现可视化配置,而不会增加后端的代码维护。在本实施例中,基于上述Velocity模板引擎,采用MVC模式进行Java应用开发,以在前端新增上述Web页面。上述前端为客户端的前台,即直接展示在用户的终端上的前台界面;而上述后端为客户端的后台,其通常用于后端开发人员进行开发,不直接展现在用户的终端上。
如上述步骤S2所述的,后端系统获取第三方平台的信息,并将其发送至上述前端,上述信息为第三方平台的基本信息,上述第三方平台指的是新增加的第三方平台支付公司或渠道。
如上述步骤S3-S4所述的,上述前端的Web页面通过第三方平台的请求方式以及地址配置请求方式以及地址,并返回格式化至后端;做到在前端进行配置,实现后端调用外部第三方平台接口的可配置化,从而固定了主流程业务代码。在本实施例中,通过配置即可组装对应报文调用第三方平台支付公司或渠道,在添加第三方平台支付公司或渠道时,不需要修改主流程业务代码,减少了代码维护成本。进而在接收到访问第三方平台的指令时,所述Web页面则直接基于第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据,无需经过后台进行第三方平台的访问。
在一实施例中,所述基于Velocity模板引擎,新增一个Web页面的步骤S1之后,还包括:
步骤S11,获取所述Web页面的布局规则;
步骤S12,根据所述Web页面的布局规则,在预设的数据库中获取验证Web页面的规则列表;其中,预设的数据库中存储有布局规则与验证Web页面的规则列表的对应关系,所述验证Web页面的规则列表中包括所要验证的Web页面的页面元素以及页面元素的规则;
步骤S13,获取所述Web页面中的目标页面元素,以及所述Web页面中的目标页面元素的规则;
步骤S14,判断所述Web页面中的目标页面元素的规则与所述验证Web页面的规则列表中页面元素的规则是否一致;
步骤S15,若一致,则验证通过。
在本实施例中,生成上述Web页面之后,还需要对其进行验证。具体地,Web页面具有多种布局规则,根据布局规则的不同,在数据库中预存有对应的验证Web页面的规则列表,验证Web页面的规则列表中包括验证的Web页面的页面元素以及页面元素的规则,即在该验证Web页面的规则列表中存储的是对Web页面的验证规则。
在验证Web页面的过程中,只需要获取到需要验证的Web页面的布局规则,然后在数据库中匹配出上述验证Web页面的规则列表;进而再获取出所述Web页面中的目标页面元素,以及所述Web页面中的目标页面元素的规则,该Web页面中的目标页面元素的规则包括独立规则和相对规则,其中,独立规则包含Web页面中目标页面元素自身的属性,相对规则包含Web页面中目标页面元素之间的关系。最后,验证上述Web页面中目标页面元素的规则与所述验证Web页面的规则列表中的页面元素的规则是否一致,则可以验证出上述Web页面是否存在缺陷;若一致,则无缺陷。
在另一实施例中,所述返回格式化至所述后端的步骤S3之后,还包括:
步骤S31,获取所述后端的主流程业务代码;
步骤S32,验证所述主流程业务代码是否发生改变;
步骤S33,若未改变,则执行在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据的步骤。
在本实施例中,本方法的目的就在于不修改后端的主流程业务代码,因此,在上述web页面配置好第三方平台的请求方式以及地址之后,需要验证后端的主流程业务代码是否发生改变。验证上述主流程业务代码是否发生改变时,可以采用代码分析工具,将其与配置上述web页面之前的主流程业务代码进行逐行比对。
在本实施例中,所述验证所述主流程业务代码是否发生改变的步骤S32,具体包括:
步骤S321,对所述主流程业务代码进行哈希计算,得到对应的第一哈希值;
步骤S322,判断所述第一哈希值与预存的第二哈希值是否一致;其中,所述第二哈希值为新增所述web页面之前的主流程业务代码进行哈希计算所得;
步骤S323,若一致,则判定所述主流程业务代码未发生改变。
在本实施例中,验证主流程业务代码是否发生改变时,只需要对上述主流程业务代码进行哈希计算,得到第一哈希值,然后将其与新增所述web页面之前的主流程业务代码进行哈希计算所得的第二哈希值进行对比,判断是否一致,便可以判断出主流程业务代码是否发生改变。可以理解的是,在进行哈希计算时,若其中主流程业务代码的任一处发生改变,则最后计算所得到的哈希值也会不同。
在一实施例中,所述所述基于Velocity模板引擎,新增一个Web页面的步骤S1之后,包括:
步骤S101,获取开发者的开发者信息;其中,所述开发者信息包括多个;
步骤S102,按照预设规则,对多个所述开发者信息进行排序;
步骤S103,将排序后的所述开发者信息依次进行拼接,得到第一拼接字符串;
步骤S104,对所述第一拼接字符串进行哈希计算得到对应的第三哈希值,并将所述第三哈希值编码成第一字符串;
步骤S105,在新增的所述Web页面中新增一个开发者字段,并将所述第一字符串赋值给所述开发者字段。
在本实施例中,开发者信息包括有多个字段,具有多个信息,例如开发者用户名称、部门、开发时间等。
在本实施例中,预先定义有对开发者信息进行排序的规则,对上述开发者信息进行排序的好处在于,后续在验证开发者字段时,可以根据相同的排序规则得到相同的拼接字符串。具体地,可以按照开发者信息的拼音首字母的顺序进行排序。
对排序后的开发者信息进行拼接,得到上述第一拼接字符串。具体的拼接方式可以采用:value1&value2,其中value为开发者信息。
对所述第一拼接字符串进行哈希计算得到对应的第一哈希值,并将所述第一哈希值编码成第一字符串;其中,采用的哈希算法为HmacSHA256,上述第一字符串为Base64字符串。在本实施例中,上述哈希计算可以在区块链中进行,在区块链的节点中进行哈希计算,可以保障数据的安全性。同时,上述编码得到的第一字符串记录在区块链中,其无法被篡改。
进一步地,在新增的所述Web页面中新增一个开发者字段,并将所述第一字符串赋值给所述开发者字段;其中,该开发者字段即作为一个记录上述Web页面的开发者信息的数据。后续获取上述Web页面的开发者信息时,只需对上述开发者字段进行逆向解析,便可以得到开发者信息。本实施例中,避免直接将开发者信息记录在Web页面中,可以避免用户信息的泄露。
在一实施例中,所述基于后端获取第三方平台的信息的步骤S2,包括:
步骤S21,基于所述后端获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
步骤S22,基于所述后端解析所述接入请求中携带的http请求信息,得到请求行;
步骤S23,基于所述后端从所述请求行中获取所述第三方平台的请求方式、地址。
在本实施例中,后端系统获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息,其中http请求信息包括请求行、请求头以及请求体;因此,后端系统获取到上述http请求信息之后,对其进行解析,得到上述请求行、请求头以及请求体,进而获取上述请求行中的请求方式字段以及URL字段,上述请求方式字段以及URL字段中记载的便是第三方平台的请求方式、地址,即第三方平台的基本信息。最后,后端再将上述第三方平台的基本信传输至前端。
在另一实施例中,所述第三方平台的信息还包括第三方平台的平台信息;
所述后端获取第三方平台的信息的步骤S2,具体包括:
步骤S201,获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
步骤S202,解析所述接入请求中携带的http请求信息,得到请求行、请求头以及请求体;其中,所述请求头以及所述请求体经过所述第三方平台加密处理;
步骤S203,从所述请求行中获取所述第三方平台的请求方式、地址;
步骤S204,将所述请求方式以及所述地址进行拼接并进行哈希计算,得到第四哈希值;
步骤S205,基于所述第四哈希值,对所述请求头进行解密,得到所述请求头中包含的第一密码以及多个特征信息字段;
步骤S206,基于所述请求方式,在数据库中获取对应的目标特征信息字段;其中,数据库中预存有请求方式与目标特征信息字段的对应关系;
步骤S207,从多个所述特征信息字段中获取所述目标特征信息字段对应的目标信息;
步骤S208,按照预设规则,将所述目标信息与所述第一密码进行组合,得到第二密码;
步骤S209,基于所述第二密码,对所述请求体进行解密,得到所述请求体中包含的所述第三方平台的平台信息。
在本实施例中,后端还需要获取到第三方平台的平台信息,上述第三方平台的平台信息为较私密的信息,因此为了提高信息的安全性,不便于以明文的形式存在。因此,上述第三方平台预先将上述平台信息添加至上述http请求信息中的请求体中,然后对上述请求体进行加密处理,避免其以明文形式保存。可以理解的是,上述第三方平台加密上述请求体的密码信息存储于上述请求头中,同时请求头也需要经过加密,只有对请求头进行加密之后,并按照对应的规则才可以获取到解密上述请求体的解密密码。在本实施例中,上述后端基于上述步骤S201-步骤S209,进行请求体的解密过程,以获取到第三方平台的平台信息;上述解密过程复杂,不容易被破解;通过上述方式,可有效增加信息的安全性。
在一实施例中,上述调用第三方平台的方法,还包括:
将所述第三方平台的信息保存至区块链中。其中,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
参照图2,本申请一实施例中还提供了一种调用第三方平台的装置,应用于前端,所述前端为客户端的前台,包括:
新增单元10,用于基于Velocity模板引擎,新增一个Web页面;
第一获取单元20,用于基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;其中,所述后端为所述客户端的后台;
配置单元30,用于在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;
调用单元40,用于在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。
在一实施例中,上述调用第三方平台的装置,还包括:
第二获取单元,用于获取所述Web页面的布局规则;
第三获取单元,用于根据所述Web页面的布局规则,在预设的数据库中获取验证Web页面的规则列表;其中,预设的数据库中存储有布局规则与验证Web页面的规则列表的对应关系,所述验证Web页面的规则列表中包括所要验证的Web页面的页面元素以及页面元素的规则;
第四获取单元,用于获取所述Web页面中的目标页面元素,以及所述Web页面中的目标页面元素的规则;
判断单元,用于判断所述Web页面中的目标页面元素的规则与所述验证Web页面的规则列表中页面元素的规则是否一致;
第一验证单元,用于若一致,则验证通过。
在一实施例中,上述调用第三方平台的装置,还包括:
第五获取单元,用于获取所述后端的主流程业务代码;
第二验证单元,用于验证所述主流程业务代码是否发生改变;
执行单元,用于若未改变,则通过调用单元40在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。
在一实施例中,上述第二验证单元,具体用于:
对所述主流程业务代码进行哈希计算,得到对应的第一哈希值;
判断所述第一哈希值与预存的第二哈希值是否一致;其中,所述第二哈希值为新增所述web页面之前的主流程业务代码进行哈希计算所得;
若一致,则判定所述主流程业务代码未发生改变。
在一实施例中,上述调用第三方平台的装置,还包括:
第六获取单元,用于获取开发者的开发者信息;其中,所述开发者信息包括多个;
排序单元,用于按照预设规则,对多个所述开发者信息进行排序;
拼接单元,用于将排序后的所述开发者信息依次进行拼接,得到第一拼接字符串;
第一哈希单元,用于对所述第一拼接字符串进行哈希计算得到对应的第三哈希值,并将所述第三哈希值编码成第一字符串;
新增字段单元,用于在新增的所述Web页面中新增一个开发者字段,并将所述第一字符串赋值给所述开发者字段。
在一实施例中,上述第一获取单元20,具体用于:
基于所述后端获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
基于所述后端解析所述接入请求中携带的http请求信息,得到请求行;
基于所述后端从所述请求行中获取所述第三方平台的请求方式、地址。
在一实施例中,所述第三方平台的信息还包括第三方平台的平台信息;
上述第一获取单元20,具体用于:
获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
解析所述接入请求中携带的http请求信息,得到请求行、请求头以及请求体;其中,所述请求头以及所述请求体经过所述第三方平台加密处理;
从所述请求行中获取所述第三方平台的请求方式、地址;
将所述请求方式以及所述地址进行拼接并进行哈希计算,得到第四哈希值;
基于所述第四哈希值,对所述请求头进行解密,得到所述请求头中包含的第一密码以及多个特征信息字段;
基于所述请求方式,在数据库中获取对应的目标特征信息字段;其中,数据库中预存有请求方式与目标特征信息字段的对应关系;
从多个所述特征信息字段中获取所述目标特征信息字段对应的目标信息;
按照预设规则,将所述目标信息与所述第一密码进行组合,得到第二密码;
基于所述第二密码,对所述请求体进行解密,得到所述请求体中包含的所述第三方平台的平台信息。
在本实施例中,上述装置实施例中的各个单元的具体实现,请参照上述方法实施例中所述,在此不再进行赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作系统、计算机程序和数据库。该内存储器为存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储代码等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种调用第三方平台的方法。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种调用第三方平台的方法。可以理解的是,本实施例中的计算机可读存储介质可以是易失性可读存储介质,也可以为非易失性可读存储介质。
综上所述,为本申请实施例中提供的调用第三方平台的方法、装置、计算机设备和存储介质,基于Velocity模板引擎,新增一个Web页面;基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。基于前端新增的Web页面实现与后端的分离,直接通过前端的Web页面实现第三方平台的调用,而无需进行后端主流程业务代码的修改,减少代码维护成本。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种调用第三方平台的方法,应用于前端,所述前端为客户端的前台,其特征在于,包括以下步骤:
基于Velocity模板引擎,新增一个Web页面;
基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;其中,所述后端为所述客户端的后台;
在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;
在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。
2.根据权利要求1所述的调用第三方平台的方法,其特征在于,所述基于Velocity模板引擎,新增一个Web页面的步骤之后,还包括:
获取所述Web页面的布局规则;
根据所述Web页面的布局规则,在预设的数据库中获取验证Web页面的规则列表;其中,预设的数据库中存储有布局规则与验证Web页面的规则列表的对应关系,所述验证Web页面的规则列表中包括所要验证的Web页面的页面元素以及页面元素的规则;
获取所述Web页面中的目标页面元素,以及所述Web页面中的目标页面元素的规则;
判断所述Web页面中的目标页面元素的规则与所述验证Web页面的规则列表中页面元素的规则是否一致;
若一致,则验证通过。
3.根据权利要求1所述的调用第三方平台的方法,其特征在于,所述返回格式化至所述后端的步骤之后,还包括:
获取所述后端的主流程业务代码;
验证所述主流程业务代码是否发生改变;
若未改变,则执行在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据的步骤。
4.根据权利要求3所述的调用第三方平台的方法,其特征在于,所述验证所述主流程业务代码是否发生改变的步骤,包括:
对所述主流程业务代码进行哈希计算,得到对应的第一哈希值;
判断所述第一哈希值与预存的第二哈希值是否一致;其中,所述第二哈希值为新增所述web页面之前的主流程业务代码进行哈希计算所得;
若一致,则判定所述主流程业务代码未发生改变。
5.根据权利要求1所述的调用第三方平台的方法,其特征在于,所述所述基于Velocity模板引擎,新增一个Web页面的步骤之后,包括:
获取开发者的开发者信息;其中,所述开发者信息包括多个;
按照预设规则,对多个所述开发者信息进行排序;
将排序后的所述开发者信息依次进行拼接,得到第一拼接字符串;
对所述第一拼接字符串进行哈希计算得到对应的第三哈希值,并将所述第三哈希值编码成第一字符串;
在新增的所述Web页面中新增一个开发者字段,并将所述第一字符串赋值给所述开发者字段。
6.根据权利要求1所述的调用第三方平台的方法,其特征在于,所述基于后端获取第三方平台的信息的步骤,包括:
基于所述后端获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
基于所述后端解析所述接入请求中携带的http请求信息,得到请求行;
基于所述后端从所述请求行中获取所述第三方平台的请求方式、地址。
7.根据权利要求1所述的调用第三方平台的方法,其特征在于,所述第三方平台的信息还包括第三方平台的平台信息;
所述后端获取第三方平台的信息的步骤,具体包括:
获取第三方平台发送的接入请求,上述接入请求中携带有http请求信息;
解析所述接入请求中携带的http请求信息,得到请求行、请求头以及请求体;其中,所述请求头以及所述请求体经过所述第三方平台加密处理;
从所述请求行中获取所述第三方平台的请求方式、地址;
将所述请求方式以及所述地址进行拼接并进行哈希计算,得到第四哈希值;
基于所述第四哈希值,对所述请求头进行解密,得到所述请求头中包含的第一密码以及多个特征信息字段;
基于所述请求方式,在数据库中获取对应的目标特征信息字段;其中,数据库中预存有请求方式与目标特征信息字段的对应关系;
从多个所述特征信息字段中获取所述目标特征信息字段对应的目标信息;
按照预设规则,将所述目标信息与所述第一密码进行组合,得到第二密码;
基于所述第二密码,对所述请求体进行解密,得到所述请求体中包含的所述第三方平台的平台信息。
8.一种调用第三方平台的装置,应用于前端,所述前端为客户端的前台,其特征在于,包括:
新增单元,用于基于Velocity模板引擎,新增一个Web页面;
第一获取单元,用于基于后端获取第三方平台的信息;其中,所述第三方平台为支付方,所述第三方平台的信息至少包括第三方平台的请求方式、地址;其中,所述后端为所述客户端的后台;
配置单元,用于在所述Web页面,基于所述第三方平台的信息配置第三方平台的请求方式以及地址,并返回格式化至所述后端;
调用单元,用于在接收到访问第三方平台的指令时,基于所述第三方平台的请求方式以及地址访问所述第三方平台,以获取对应的数据。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011496953.3A CN112528201A (zh) | 2020-12-17 | 2020-12-17 | 调用第三方平台的方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011496953.3A CN112528201A (zh) | 2020-12-17 | 2020-12-17 | 调用第三方平台的方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112528201A true CN112528201A (zh) | 2021-03-19 |
Family
ID=75001056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011496953.3A Pending CN112528201A (zh) | 2020-12-17 | 2020-12-17 | 调用第三方平台的方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112528201A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946362A (zh) * | 2021-09-02 | 2022-01-18 | 北京房江湖科技有限公司 | 消费数据处理方法及存储介质 |
CN114185614A (zh) * | 2021-12-03 | 2022-03-15 | 招联消费金融有限公司 | 动态资信的调用方法、装置、计算机设备和存储介质 |
CN115811513A (zh) * | 2023-02-08 | 2023-03-17 | 广州市玄武无线科技股份有限公司 | 第三方接口请求设计方法、装置、存储介质 |
-
2020
- 2020-12-17 CN CN202011496953.3A patent/CN112528201A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946362A (zh) * | 2021-09-02 | 2022-01-18 | 北京房江湖科技有限公司 | 消费数据处理方法及存储介质 |
CN113946362B (zh) * | 2021-09-02 | 2022-08-16 | 贝壳找房(北京)科技有限公司 | 消费数据处理方法及存储介质 |
CN114185614A (zh) * | 2021-12-03 | 2022-03-15 | 招联消费金融有限公司 | 动态资信的调用方法、装置、计算机设备和存储介质 |
CN115811513A (zh) * | 2023-02-08 | 2023-03-17 | 广州市玄武无线科技股份有限公司 | 第三方接口请求设计方法、装置、存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109474578B (zh) | 报文消息校验方法、装置、计算机设备和存储介质 | |
CN112528201A (zh) | 调用第三方平台的方法、装置、计算机设备和存储介质 | |
CN111314306A (zh) | 接口访问方法及装置、电子设备、存储介质 | |
CN108776936A (zh) | 保险理赔方法、装置、计算机设备和存储介质 | |
CN110535971B (zh) | 基于区块链的接口配置处理方法、装置、设备及存储介质 | |
CN110365670A (zh) | 黑名单共享方法、装置、计算机设备和存储介质 | |
CN110688662A (zh) | 一种敏感数据脱敏及逆脱敏方法、电子设备 | |
CN109493048B (zh) | 基于区块链的财务记账方法、装置、设备及存储介质 | |
CN110990883A (zh) | 数据访问方法、装置、计算机可读存储介质和计算机设备 | |
CN110083384B (zh) | 应用程序编程接口创建方法以及装置 | |
CN112215609B (zh) | 基于超级账本的房产用户身份认证方法、装置和电子设备 | |
CN112800393B (zh) | 授权认证、软件开发工具包生成方法、装置及电子设备 | |
CN109614774B (zh) | 一种基于sgx的程序控制流混淆方法及系统 | |
CN108282484B (zh) | 密码获取方法、装置、计算机设备和存储介质 | |
CN111127205A (zh) | 智能合约生成方法、装置、计算机设备和存储介质 | |
CN111131234A (zh) | 供应链中智能合约数据处理方法、装置和计算机设备 | |
CN112328486A (zh) | 接口自动化测试方法、装置、计算机设备及存储介质 | |
CN111597060B (zh) | 数据调用方法、装置、计算机设备和存储介质 | |
CN112100689B (zh) | 一种可信数据处理方法、装置及设备 | |
CN115730319A (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN109101841A (zh) | 一种数据处理方法、装置、系统、计算机设备和存储介质 | |
CN113282959A (zh) | 业务数据处理方法、装置及电子设备 | |
CN111211902A (zh) | 一种基于企业浏览器实现的数字签名方法和装置 | |
CN111817859A (zh) | 基于零知识证明的数据共享方法、装置、设备及存储介质 | |
CN111143399B (zh) | 数据处理方法、装置、存储介质和计算机设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |