CN112015494A - 第三方api工具调用方法、系统及装置 - Google Patents
第三方api工具调用方法、系统及装置 Download PDFInfo
- Publication number
- CN112015494A CN112015494A CN202010880906.2A CN202010880906A CN112015494A CN 112015494 A CN112015494 A CN 112015494A CN 202010880906 A CN202010880906 A CN 202010880906A CN 112015494 A CN112015494 A CN 112015494A
- Authority
- CN
- China
- Prior art keywords
- real
- request
- time
- calling
- calling request
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012545 processing Methods 0.000 claims abstract description 48
- 230000004044 response Effects 0.000 claims description 23
- 238000012795 verification Methods 0.000 claims description 11
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 230000005856 abnormality Effects 0.000 claims description 3
- 238000007639 printing Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000013473 artificial intelligence Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 21
- 230000008569 process Effects 0.000 description 19
- 230000005540 biological transmission Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000000586 desensitisation Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000007689 inspection Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003864 performance function Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及人工智能,提供一种第三方API工具调用方法,包括:获取综合系统内发出的实时调用请求,并对实时调用请求进行系统认证以判断实时调用请求是否合法;若实时调用请求合法,则根据实时调用请求的调用类型或请求方式对实时调用请求进行横向扩展,以实现对实时调用请求的分类;根据实时调用请求的分类结果,对实时调用请求进行相应的系统处理;在对实时调用请求进行系统处理后,根据实时调用请求调用目标系统并获取相应的调用返回结果。本发明还涉及区块链技术,请求参数和预设加密签名串存储于区块链中。本发明提供技术方案既能够解决现有的第三方API工具功能单一、安全系数低且适用范围较窄的问题。
Description
技术领域
本发明涉及安全监控技术领域,尤其涉及一种第三方API工具调用方法、系统、装置及存储介质。
背景技术
随着科技的快速发展,网络系统在商业中得到广泛应用,这些系统随着一次次升级,功能也变得越来越强大。与此同时,系统的内部结构也越来越复杂,基于系统设计应遵循的高内聚、低耦合的原则,整个大型系统内部会产生越来越多的子系统,这些子系统相对独立但又彼此协调,共同组成了这个庞大的综合系统对外提供服务。比如,在一个博客综合系统中,内部就包含了许多具备特定功能的子系统,如用户子系统、文章子系统、留言子系统、聊天子系统等等,各子系统之间通过错综复杂的数据交换实现整个博客综合系统整体功能的运作。
然而,随着系统业务功能的不断扩展,对系统性功能也随之提出了更高的要求。通常情况下,这些子系统之间的数据交换需要一个功能强大的第三方API工具进行维护,具体地,第三方API工具是由第三方(通常是一些公司)提供的API,允许通过API接口访问和调用其功能,并在需要的站点上使用它。比如,我们可以使用云盘的短信发送API、邮箱推送API、文件存储API来调用相关的功能。然而,在传统各子系统之间交互的流程中,调用第三方API工具的功能结构比较单一,而那些相对复杂的API工具也只是某些功能的简单组合,只能在其本身要求的特定场景发挥作用,比如,在上述博客综合系统中,留言子系统与聊天子系统之间使用的调用第三方API工具通常不能运用到用户子系统与文章子系统之间的数据交换。
此外,使用传统的调用第三方API工具在大型系统内部子系统之间进行数据交换时,经常会出现一些问题,主要包括安全问题和性能问题,例如,在使用第三方API工具进行数据交换时,一些非法程序通过第三方API工具进入系统内部,影响整个系统的工作性能,甚至窃取一些重要的内部数据,危害整个系统的安全。
基于以上几个问题,亟需一种安全系数高、适用范围广的第三方API工具调用方法。
发明内容
本发明提供一种第三方API工具调用方法、系统、电子装置以及计算机存储介质,其主要目的在于解决现有的第三方API工具功能单一、安全系数低且适用范围较窄的问题。
为实现上述目的,本发明提供一种第三方API工具调用方法,该方法包括如下步骤:
获取综合系统内发出的实时调用请求,并对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法;
若所述实时调用请求合法,则根据所述实时调用请求的调用类型或请求方式对所述实时调用请求进行横向扩展,以实现对所述实时调用请求的分类;
根据所述实时调用请求的分类结果,对所述实时调用请求进行相应的系统处理;
在对所述实时调用请求进行系统处理后,根据所述实时调用请求调用目标系统并获取相应的调用返回结果。
可选地,所述实时调用请求自带有请求参数以及与所述请求参数相关的预设加密签名串,所述请求参数以及所述预设加密签名串存储于区块链中;并且,所述系统认证包括安全校验;其中,对所述实时调用请求进行所述安全校验的过程包括:
根据预设算法对获取的实时调用请求的请求参数进行签名,以获取所述请求参数的实时加密签名串;
对所述实时加密签名串和所述预设加密签名串进行比对;
若所述实时加密签名串和所述预设加密签名串一致,则判定所述实时调用请求通过所述安全校验;若所述实时加密签名串和所述预设加密签名串不一致,则判定所述实时调用请求非法,并拒绝所述实时调用请求。
另外,本发明还提供一种第三方API工具调用系统,所述系统包括:
合法判断单元,用于获取综合系统内发出的实时调用请求,并对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法;
横向扩展单元,用于若所述实时调用请求合法,则根据所述实时调用请求的调用类型或请求方式对所述实时调用请求进行横向扩展,以实现对所述实时调用请求的分类;
系统处理单元,用于根据所述实时调用请求的分类结果,对所述实时调用请求进行相应的系统处理;
系统调用单元,用于在对所述实时调用请求进行系统处理后,根据所述实时调用请求调用目标系统并获取相应的调用返回结果。
另外,为实现上述目的,本发明还提供一种电子装置,该电子装置包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的第三方API工具调用程序,所述第三方API工具调用程序被所述处理器执行时实现如下步骤:
获取综合系统内发出的实时调用请求,并对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法;
若所述实时调用请求合法,则根据所述实时调用请求的调用类型或请求方式对所述实时调用请求进行横向扩展,以实现对所述实时调用请求的分类;
根据所述实时调用请求的分类结果,对所述实时调用请求进行相应的系统处理;
在对所述实时调用请求进行系统处理后,根据所述实时调用请求调用目标系统并获取相应的调用返回结果。
另外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有第三方API工具调用程序,所述第三方API工具调用程序被处理器执行时,实现如上述第三方API工具调用方法的步骤。
本发明提出的第三方API工具调用方法、电子装置及计算机可读存储介质,通过为第三方API工具设计独特的内部结构,能够作为一个纽带有效地连接了各个子系统(被调用的子系统一般称为目标系统),使这些子系统真正意义上成为一个整体为用户提供服务。此外,通过设置安全校验、权限校验以及日志脱敏等一系列技术手段,能够显著降低各个子系统之间的耦合性,另外,通过设置与调用请求相关的横向扩展功能以及系统处理功能,能够使系统可扩展性和可维护性和得到极大改善,并且系统监控更为简单,能够显著提高整个系统的可靠性。
附图说明
图1为根据本发明实施例的第三方API工具调用方法的较佳实施例流程图;
图2为根据本发明实施例的电子装置的较佳实施例结构示意图;
图3为根据本发明实施例的第三方API工具调用程序的内部逻辑示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
在下面的描述中,出于说明的目的,为了提供对一个或多个实施例的全面理解,阐述了许多具体细节。然而,很明显,也可以在没有这些具体细节的情况下实现这些实施例。
以下将结合附图对本申请的具体实施例进行详细描述。
实施例1
为了说明本发明提供的第三方API工具调用方法,图1示出了根据本发明提供的第三方API工具调用方法的流程。
如图1所示,本发明提供的第三方API工具调用方法,包括:
S110:获取综合系统内发出的实时调用请求,并对该实时调用请求进行系统认证以判断该实时调用请求是否合法。其中,实时调用请求为综合系统内部的某一子系统与其他一个或多个子系统(被调动的系统,即下述的目标系统)进行数据交互时所发出的调用请求。
需要说明的是,本发明该设计的数据传输均是综合系统内部各子系统之间的数据传输,由于综合系统内各子系统之间均是通过调用第三方API工具进行数据交互的,而调用第三方API工具是由第三方提供的暴露于公网环境中的调用工具,因此,为防止各子系统发出的实时调用请求中的数据被非法篡改,甚至是被非法替换,从而危及到整个综合系统内部的数据安全,调用第三方API工具需要对此进行重点关注。优选的,一般需要对调用第三方API工具增加一个系统认证功能,通过系统认证的方式来确保接收到的实时调用请求中的数据均处在安全状态。
具体地,系统认证至少包括安全校验和权限校验两个过程,安全校验的目的是对实时调用请求进行数据防篡改检查,权限校验的目的是核查请求者的权限范围,需要说明的是,由于数据防篡改检查相对较为重要,因此权限校验一般设置在安全校验之后,当实时调用请求通过安全校验和权限校验两个过程后,则判定本次实时调用请求合法。
此外,需要说明的是,当某一子系统(具体一般由用户执行)向调用第三方API工具发起实时调用请求时,需同时以get方式传递对请求参数(对应前述的实时调用请求,下同)加密过的签名串(如md5加密),即实时调用请求自带有请求参数以及与该请求参数相关的预设加密签名串。
当调用第三方API工具的服务器接收到该请求后,需要以相同的方式对该请求参数根据约定的算法进行签名,以获取该请求参数的实时加密签名串;然后对该实时加密签名串和该预设加密签名串进行比对;若该实时加密签名串和该预设加密签名串一致,则判定该实时调用请求通过该安全校验,进行下一步的权限校验;若该实时加密签名串和该预设加密签名串不一致,则判定该实时调用请求非法,并拒绝该实时调用请求。
需要说明的是,该实时调用请求通常自带有请求头,并且在该请求头内添加有与用户身份信息相关的密文串。例如,某一子系统向调用第三方API工具发起实时调用请求时,需在该实时调用请求的请求头中添加包含用户身份信息的密文串(根据与用户约定的加密算法设定)。
当前述安全校验通过后,调用第三方API工具的服务端会对此密文进行解析,以获取该密文中的用户身份信息,然后通过预设的用户身份权限对照表(预先存储在调用第三方API工具的服务器内,与用户身份有关),对该用户身份信息进行相应的权限查询校验,若在该用户身份权限对照表中查询到与该用户身份信息一致的用户信息,则判定该实时调用请求通过该权限校验;若未在该用户身份权限对照表中查询到与该用户身份信息一致的用户信息,则判定该实时调用请求非法,并拒绝该实时调用请求。
另外,需要强调的是,为进一步保证上述请求参数和加密签名串的私密和安全性,该请求参数和该加密签名串可以存储于区块链的节点中。
S120:若该实时调用请求通过系统认证(即合法,包括通过安全校验和权限校验两个过程,下同),则根据实时调用请求的调用类型或请求方式对该实时调用请求进行横向扩展,以实现对实时调用请求的分类;若该实时调用请求未通过该系统认证,则流程终止,退回该实时调用请求。
具体地,实时调用请求的扩展方式包括多种,扩展方式的设定一般是根据实时调用请求配置的请求属性设定的,该请求属性为业务属性或性能属性,业务属性是指实时调用请求与业务本省的相关性较高,性能属性是指实时调用请求与请求方式的相关性较强;当该实时调用请求的请求属性为业务属性时,则根据该实时调用请求的调用类型对该实时调用请求进行横向扩展,比如说,在一个大中型的综合系统中,某个子系统整个运行过程中需要调用的其它子系统(目标系统)可能不止一个,而是多个,此时即可先根据该子系统所涉及到的每种调用请求(对应不同的其他子系统)的特性定义实时调用请求的类型,以便对该子系统对其他不同子系统的调用进行分类标记。此外,这种分类标记的方式还便于快速识别相应的返回结果,并对该返回结果进行处理,从而提高调用第三方API工具的工作效率。
具体地,在实际操作过程中,一般可以根据与该实时调用请求同属于同一子系统的所有历史调用请求进行横向扩展,例如,获取与该实时调用请求同属于同一子系统的所有历史调用请求,并根据该历史调用请求的调用类型设定相应的分类标记表;根据该实时调用请求的调用类型自该分类标记表中选定相应的分类标记;其中,该分类标记表中各分类标记均对应相应的目标系统。
当该实时调用请求的请求属性为性能属性时,则根据该实时调用请求的请求方式对该实时调用请求进行横向扩展,该类扩展方式为根据实时调用请求的请求方式进行横向扩展,例如,对当前最流行的RESTful风格的实时http调用请求进行个性化定制从而为实时http调用请求配置多种可选择性的请求方式,如post、put、delete、get等。
具体地,在实际应用中,可根据历史调用请求的请求方式进行横向扩展,例如,获取与该实时调用请求同属于同一子系统的所有历史调用请求,并根据该历史调用请求的请求方式设定相应的请求方式表;根据该实时调用请求的请求参数自该请求方式表中选定相应的请求方式。需要说明的是,调用第三方API工具可以根据实时调用请求的请求参数获取用户单次请求的特点,通过单次请求的特点配置不同的请求方式,比如想要获得快速的响应结果以及简洁的请求,可以选择get方式;若更关注于请求安全性,可选择post方式;若想快速实现记录删除,可选择delete方式等等。
需要说明的是,上述两种扩展方式一般是选择使用的,若用户更关注于业务本身,如财务、支付、签章等,可以根据请求类型进行横向扩展,比如调用某一子系统需要调用公司的财务接口,可能涉及到相关财务的数据登记、报表统计等功能,可以根据这部分功能直接抽离出来形成一个单独的财务子系统,规范入参,响应结果等,并通过请求类型横向扩展的方式为该实时调用请求设定相应的分类标记,从而提高整个综合系统的工作效率,又如签章功能,可以将签名抽离出来形成签章子系统,后期定义签名需要传递的入参以及安全参数校验等。若用户更关注于调用方式本身,如安全、性能等,可选择根据请求方式进行横向扩展,比如想要获得快速的响应结果以及简洁的请求,可以选择get方式;若更关注于请求安全性,可选择post方式;若想快速实现记录删除,可选择delete方式。
S130:在该实时调用请求横向扩展后,根据该实时调用请求的分类结果,对该实时调用请求进行相应的系统处理。
需要说明的是,系统处理主要包含对流程中某些数据的一些特定处理,主要是系统级别的,主要目的为了便于系统跟踪及维护,以使多个子系统之间的某些状态保持一致。
具体地,发出该实时调用请求的子系统设置有流水线日志ID,该系统处理包括协同参数传递过程,对该实时调用请求进行协同参数传递的过程包括:获取该实时调用请求的用户身份信息和该子系统的流水线日志ID;将该用户身份信息和该流水线日志ID编码为协同参数,并通过Get方式将该协同参数直接拼接在该实时调用请求的URL(uniformresource locator)末尾。
比如将某个最先被访问子系统的流水线日志ID(即logID)传递到下个即将被访问的系统(目标系统,该步骤即为级联传递logID);另外,为了让下一个子系统(即目标系统)知道如何响应请求,也会将用户的身份信息一并进行传递。这两种方式即为协同参数传递,比如,在dmz(Demilitarized Zone)子系统访问app(Application)子系统时,为达到日志的协同查询(即dmz子系统的日志流水线ID与app的子系统的日志流水线ID一致),dmz子系统的实时调用请求需携带其日志流水线ID一起传递至app子系统。具体做法为:1、将日志流水线ID作为普通参数以get方式拼接在请求URL后面。2、将实时调用请求的入参以json格式通过post请求方式置于requestBody中传递给app子系统。
需要说明的是,Get方式可以将协同参数直接拼接在请求URL后面,与其对应的另一个请求方式为post,传输数据更安全,但传输速率没有get方式好,请求URL为统一资源定位系统,用于定位调用第三方API工具所在网络位置的表示方法。通过将日志流水线ID作为普通参数以get方式拼接在请求URL后面可以快速实现日志流水线ID同请求URL的一并传送,提高数据处理效率。此外,将实时调用请求的入参(调用某个子系统需要传递的某些请求参数,以便服务器能进一步了解请求的意图)以json的格式通过post请求方式置于requestBody(请求体,发送实时调用请求时入参所在位置的一种,用于存放post请求方式)中,再以requestBody的方式传递给app子系统。
此处需要说明的是,Json格式是目前网络通信数据流转最为流行的格式,这种格式简洁、使用范围广,通用性强,因此,选用Json格式的post请求方式可以在确保数据安全传输的前提下,提高调用第三方API工具的适用性。
此外,该系统处理还包括系统监控,该系统监控主要包括:性能监控、异常处理以及日志记录反馈。
其中,该性能监控过程包括:获取与该实时调动请求相关的接口响应耗时,并判断该接口响应耗时是否大于预设响应耗时,若该接口响应耗时大于预设响应耗时,则判定此时响应耗时性能未达标。其中,接口响应耗时是指:从服务接收请求开始计算到处理完并返回结果所耗费的时间,单位通常为ms,接口响应耗时可作为第三方API工具提供服务响应能力的重要参考;
异常处理是指:该异常处理过程包括:当响应耗时性能未达标时,需要考虑第三方API工具是否已经出现问题,可以自检第三方API工具内部各接口的异常并对各异常进行统一处理。需要说明的是,异常检测过程为本领域的现有技术,本发明此处用于对其的使用,因此,在此不再赘述。
该日志记录反馈过程包括:在各异常均处理完毕后,打印该第三方API工具在该段时间内产生的实时日志并对该实时日志进行脱敏处理;将脱敏后的实时日志发送给请求用户或开发人员。
具体地,若接口响应时间在预设响应耗时内(如50ms),则不做任何处理,若接口响应时间超过该阈值且最终能够返回结果,则计算出超时时间,并将该超时时间返回给请求者;当接口相应时间超出阈值且一直未返回结果,则再次重试该请求,若多次重试无结果,则判定网络故障,并将网络故障提示发送请求者;则再次重试该请求后接口响应时间在阈值内,则一般判定上次请求为接口服务方发生异常,此时,可以通过解析异常关键错误信息(例如日志中的错误)发现异常所在,并提示给请求者。
此外,日志作为系统运营情况的重要反映,当系统运行出现问题时可以提供重要的线索,当然,敏感数据的脱敏也是必不可少的(涉及到用户敏感信息时)。具体的脱敏技术方案为,打印日志时提取敏感关键词如手机号、身份证号、地址信息,将值做相应规则处理后输出(如手机号中间4位*掩码,身份证号中间10位*掩码,地址信息中间固定位数掩码等),通过这种指定规则掩码处理的方式,用户的真实信息不会被窥探或泄露。
S140:在对该实时调用请求进行系统处理后,根据该实时调用请求调用目标系统并获取相应的调用返回结果。
具体地,当目标系统调用成功后,被调用的目标系统同样以json格式的post请求方式将返回数据在responseBody中返回。此外,需要说明的是,调用第三方API工具在获取返回结果以及相关返回参数时,同样会对这些数据进行异常监测或权限校验等处理,对于出现异常或其它校验不通过的情形,流程自动终止,并向请求者以及目标系统均发送返回错误信息。由于,调用第三方API工具对于返回结果进行的异常监测、权限校验等的数据处理原理相同,因此不再赘述。
通过上述技术方案的表述可知,本发明提出的第三方API工具调用方法,通过为第三方API工具设计独特的内部结构,能够作为一个纽带有效地连接了各个子系统(被调用的子系统一般称为目标系统),使这些子系统真正意义上成为一个整体为用户提供服务。此外,通过设置安全校验、权限校验以及日志脱敏等一系列技术手段,能够显著降低各个子系统之间的耦合性,另外,通过设置与调用请求相关的横向扩展功能以及系统处理功能,能够使系统可扩展性和可维护性和得到极大改善,并且系统监控更为简单,能够显著提高整个系统的可靠性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
实施例2
与上述方法相对应,本申请还提供一种第三方API工具调用系统,该系统包括:
合法判断单元,用于获取综合系统内发出的实时调用请求,并对该实时调用请求进行系统认证以判断该实时调用请求是否合法;
横向扩展单元,用于若该实时调用请求合法,则根据该实时调用请求的调用类型或请求方式对该实时调用请求进行横向扩展,以实现对该实时调用请求的分类;
系统处理单元,用于根据该实时调用请求的分类结果,对该实时调用请求进行相应的系统处理;
系统调用单元,用于在对该实时调用请求进行系统处理后,根据该实时调用请求调用目标系统并获取相应的调用返回结果。
实施例3
本发明还提供一种电子装置70。参照图2所示,该图为本发明提供的电子装置70的较佳实施例结构示意图。
在本实施例中,电子装置70可以是服务器、智能手机、平板电脑、便携计算机、桌上型计算机等具有运算功能的终端设备。
该电子装置70包括:处理器71以及存储器72。
存储器72包括至少一种类型的可读存储介质。至少一种类型的可读存储介质可为如闪存、硬盘、多媒体卡、卡型存储器等的非易失性存储介质。在一些实施例中,可读存储介质可以是该电子装置70的内部存储单元,例如该电子装置70的硬盘。在另一些实施例中,可读存储介质也可以是电子装置1的外部存储器,例如电子装置70上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。
在本实施例中,存储器72的可读存储介质通常用于存储安装于电子装置70的第三方API工具调用程序73。存储器72还可以用于暂时地存储已经输出或者将要输出的数据。
处理器72在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行存储器72中存储的程序代码或处理数据,例如第三方API工具调用程序73等。
在一些实施例中,电子装置70为智能手机、平板电脑、便携计算机等的终端设备。在其他实施例中,电子装置70可以为服务器。
图2仅示出了具有组件71-73的电子装置70,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
可选地,该电子装置70还可以包括用户接口,用户接口可以包括输入单元比如键盘(Keyboard)、语音输入装置比如麦克风(microphone)等具有语音识别功能的设备、语音输出装置比如音响、耳机等,可选地用户接口还可以包括标准的有线接口、无线接口。
可选地,该电子装置70还可以包括显示器,显示器也可以称为显示屏或显示单元。在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及有机发光二极管(Organic Light-Emitting Diode,OLED)触摸器等。显示器用于显示在电子装置70中处理的信息以及用于显示可视化的用户界面。
可选地,该电子装置70还可以包括触摸传感器。触摸传感器所提供的供用户进行触摸操作的区域称为触控区域。此外,这里的触摸传感器可以为电阻式触摸传感器、电容式触摸传感器等。而且,触摸传感器不仅包括接触式的触摸传感器,也可包括接近式的触摸传感器等。此外,触摸传感器可以为单个传感器,也可以为例如阵列布置的多个传感器。
此外,该电子装置70的显示器的面积可以与触摸传感器的面积相同,也可以不同。可选地,将显示器与触摸传感器层叠设置,以形成触摸显示屏。该装置基于触摸显示屏侦测用户触发的触控操作。
可选地,该电子装置70还可以包括射频(Radio Frequency,RF)电路,传感器、音频电路等等,在此不再赘述。
在图2所示的装置实施例中,作为一种计算机存储介质的存储器72中可以包括操作系统、以及第三方API工具调用程序73;处理器71执行存储器72中存储第三方API工具调用程序73时实现如下步骤:
获取综合系统内发出的实时调用请求,并对该实时调用请求进行系统认证以判断该实时调用请求是否合法;
若该实时调用请求合法,则根据该实时调用请求的调用类型或请求方式对该实时调用请求进行横向扩展,以实现对该实时调用请求的分类;
根据该实时调用请求的分类结果,对该实时调用请求进行相应的系统处理;
在对该实时调用请求进行系统处理后,根据该实时调用请求调用目标系统并获取相应的调用返回结果。
在该实施例中,图3为根据本发明实施例的第三方API工具调用程序的内部逻辑示意图,如图3所示,第三方API工具调用程序73还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器72中,并由处理器71执行,以完成本发明。本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段。参照图3所示,为图2中第三方API工具调用程序73较佳实施例的程序模块图。第三方API工具调用程序73可以被分割为:合法判断模块74、横向扩展模块75、系统处理模块76以及系统调用模块77。模块74-77所实现的功能或操作步骤均与上文类似,此处不再详述,示例性地,例如,其中:
合法判断模块74,用于获取综合系统内发出的实时调用请求,并对该实时调用请求进行系统认证以判断该实时调用请求是否合法;
横向扩展模块75,用于若该实时调用请求合法,则根据该实时调用请求的调用类型或请求方式对该实时调用请求进行横向扩展,以实现对该实时调用请求的分类;
系统处理模块76,用于根据该实时调用请求的分类结果,对该实时调用请求进行相应的系统处理;
系统调用模块77,用于在对该实时调用请求进行系统处理后,根据该实时调用请求调用目标系统并获取相应的调用返回结果。
实施例4
本发明还提供一种计算机可读存储介质,计算机可读存储介质中存储有第三方API工具调用程序73,第三方API工具调用程序73被处理器执行时实现如下操作:
获取综合系统内发出的实时调用请求,并对该实时调用请求进行系统认证以判断该实时调用请求是否合法;
若该实时调用请求合法,则根据该实时调用请求的调用类型或请求方式对该实时调用请求进行横向扩展,以实现对该实时调用请求的分类;
根据该实时调用请求的分类结果,对该实时调用请求进行相应的系统处理;
在对该实时调用请求进行系统处理后,根据该实时调用请求调用目标系统并获取相应的调用返回结果。
本发明提供的计算机可读存储介质的具体实施方式与上述第三方API工具调用方法、电子装置的具体实施方式大致相同,在此不再赘述。
需要说明的是,本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
需要进一步说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种第三方API工具调用方法,应用于电子装置,其特征在于,所述方法包括:
获取综合系统内发出的实时调用请求,并对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法;
若所述实时调用请求合法,则根据所述实时调用请求的调用类型或请求方式对所述实时调用请求进行横向扩展,以实现对所述实时调用请求的分类;
根据所述实时调用请求的分类结果,对所述实时调用请求进行相应的系统处理;
在对所述实时调用请求进行系统处理后,根据所述实时调用请求调用目标系统并获取相应的调用返回结果。
2.根据权利要求1所述的第三方API工具调用方法,其特征在于,所述实时调用请求自带有请求参数以及与所述请求参数相关的预设加密签名串,所述请求参数以及所述预设加密签名串存储于区块链中;并且,所述系统认证包括安全校验;
所述对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法包括:
根据预设算法对获取的实时调用请求的请求参数进行签名,以获取所述请求参数的实时加密签名串;
对所述实时加密签名串和所述预设加密签名串进行比对;
若所述实时加密签名串和所述预设加密签名串一致,则判定所述实时调用请求通过所述安全校验;若所述实时加密签名串和所述预设加密签名串不一致,则判定所述实时调用请求非法,并拒绝所述实时调用请求。
3.根据权利要求2所述的第三方API工具调用方法,其特征在于,所述实时调用请求自带有请求头,并且在所述请求头内添加有与用户身份信息相关的密文串;并且,所述系统认证还包括权限校验;
所述对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法包括:
对所述密文串进行解析,以获取所述密文串中隐含的用户身份信息;
根据预设的用户身份权限对照表对所述用户身份信息进行查询校验;
若在所述用户身份权限对照表中查询到与所述用户身份信息一致的用户信息,则判定所述实时调用请求通过所述权限校验;若未在所述用户身份权限对照表中查询到与所述用户身份信息一致的用户信息,则判定所述实时调用请求非法,并拒绝所述实时调用请求。
4.根据权利要求3所述的第三方API工具调用方法,其特征在于,所述实时调用请求配置有请求属性,所述请求属性为业务属性或性能属性,当所述请求属性为所述业务属性时,则所述根据所述实时调用请求的调用类型对所述实时调用请求进行横向扩展,包括:
获取与所述实时调用请求同属于同一子系统的所有历史调用请求,并根据所述历史调用请求的调用类型设定相应的分类标记表;
根据所述实时调用请求的调用类型自所述分类标记表中选定相应的分类标记。
5.根据权利要求4所述的第三方API工具调用方法,其特征在于,当所述请求属性为所述性能属性时,则根据所述实时调用请求的请求方式对所述实时调用请求进行横向扩展,包括:
获取与所述实时调用请求同属于同一子系统的所有历史调用请求,并根据所述历史调用请求的请求方式设定相应的请求方式表;
根据所述实时调用请求的请求参数自所述请求方式表中选定相应的请求方式。
6.根据权利要求5所述的第三方API工具调用方法,其特征在于,所述系统处理包括协同参数传递,所述对所述实时调用请求进行相应的系统处理包括:
获取所述实时调用请求的用户身份信息和发出所述实时调用请求的子系统的流水线日志ID;
将所述用户身份信息和所述流水线日志ID编码为协同参数,并通过Get方式将所述协同参数直接拼接在所述实时调用请求的URL末尾。
7.根据权利要求6所述的第三方API工具调用方法,其特征在于,所述系统处理还包括系统监控;
所述对所述实时调用请求进行相应的系统处理还包括:
获取与所述实时调动请求相关的接口响应耗时,并判断所述接口响应耗时是否大于预设响应耗时,若所述接口响应耗时大于预设响应耗时,则判定此时响应耗时性能未达标;
当响应耗时性能未达标时,自检第三方API工具内部各接口的异常并对各异常进行统一处理;
打印所述第三方API工具在该段时间内产生的实时日志并对所述实时日志进行脱敏处理;将脱敏后的实时日志发送给请求用户。
8.一种第三方API工具调用系统,其特征在于,所述系统包括:
合法判断单元,用于获取综合系统内发出的实时调用请求,并对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法;
横向扩展单元,用于若所述实时调用请求合法,则根据所述实时调用请求的调用类型或请求方式对所述实时调用请求进行横向扩展,以实现对所述实时调用请求的分类;
系统处理单元,用于根据所述实时调用请求的分类结果,对所述实时调用请求进行相应的系统处理;
系统调用单元,用于在对所述实时调用请求进行系统处理后,根据所述实时调用请求调用目标系统并获取相应的调用返回结果。
9.一种电子装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的第三方API工具调用程序,其特征在于,所述第三方API工具调用程序被所述处理器执行时实现如下步骤:
获取综合系统内发出的实时调用请求,并对所述实时调用请求进行系统认证以判断所述实时调用请求是否合法;
若所述实时调用请求合法,则根据所述实时调用请求的调用类型或请求方式对所述实时调用请求进行横向扩展,以实现对所述实时调用请求的分类;
根据所述实时调用请求的分类结果,对所述实时调用请求进行相应的系统处理;
在对所述实时调用请求进行系统处理后,根据所述实时调用请求调用目标系统并获取相应的调用返回结果。
10.一种计算机可读存储介质,所述计算机可读存储介质中存储有第三方API工具调用程序,其特征在于,所述第三方API工具调用程序被处理器执行时,实现如权利要求1至7中任一项所述的第三方API工具调用方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010880906.2A CN112015494A (zh) | 2020-08-27 | 2020-08-27 | 第三方api工具调用方法、系统及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010880906.2A CN112015494A (zh) | 2020-08-27 | 2020-08-27 | 第三方api工具调用方法、系统及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112015494A true CN112015494A (zh) | 2020-12-01 |
Family
ID=73502607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010880906.2A Pending CN112015494A (zh) | 2020-08-27 | 2020-08-27 | 第三方api工具调用方法、系统及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112015494A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112235428A (zh) * | 2020-12-16 | 2021-01-15 | 太平金融科技服务(上海)有限公司 | 调用请求处理方法、装置、计算机设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050192939A1 (en) * | 2004-02-27 | 2005-09-01 | International Business Machines Corporation | System and method for providing classification security in a database management system |
WO2014101231A1 (zh) * | 2012-12-31 | 2014-07-03 | 华为技术有限公司 | 电信网络能力开放的系统架构、子系统和方法 |
CN106953857A (zh) * | 2017-03-16 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种基于cs架构的服务器端多线程管理方法 |
CN107203715A (zh) * | 2016-03-18 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 执行系统调用的方法及装置 |
CN109871287A (zh) * | 2018-12-15 | 2019-06-11 | 中国平安人寿保险股份有限公司 | 接口调用方法、装置、计算机装置及存储介质 |
CN111552578A (zh) * | 2020-04-30 | 2020-08-18 | 成都新潮传媒集团有限公司 | 一种第三方接口调用方法及装置 |
-
2020
- 2020-08-27 CN CN202010880906.2A patent/CN112015494A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050192939A1 (en) * | 2004-02-27 | 2005-09-01 | International Business Machines Corporation | System and method for providing classification security in a database management system |
WO2014101231A1 (zh) * | 2012-12-31 | 2014-07-03 | 华为技术有限公司 | 电信网络能力开放的系统架构、子系统和方法 |
CN107203715A (zh) * | 2016-03-18 | 2017-09-26 | 阿里巴巴集团控股有限公司 | 执行系统调用的方法及装置 |
CN106953857A (zh) * | 2017-03-16 | 2017-07-14 | 郑州云海信息技术有限公司 | 一种基于cs架构的服务器端多线程管理方法 |
CN109871287A (zh) * | 2018-12-15 | 2019-06-11 | 中国平安人寿保险股份有限公司 | 接口调用方法、装置、计算机装置及存储介质 |
CN111552578A (zh) * | 2020-04-30 | 2020-08-18 | 成都新潮传媒集团有限公司 | 一种第三方接口调用方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112235428A (zh) * | 2020-12-16 | 2021-01-15 | 太平金融科技服务(上海)有限公司 | 调用请求处理方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11928245B2 (en) | Systems and methods of determining compromised identity information | |
CN112217835B (zh) | 报文数据的处理方法、装置、服务器和终端设备 | |
US10063538B2 (en) | System for secure login, and method and apparatus for same | |
US20190266355A1 (en) | Systems and methods of determining compromised identity information | |
CN113489713B (zh) | 网络攻击的检测方法、装置、设备及存储介质 | |
US20200067709A1 (en) | Methods, apparatuses, and computer program products for frictionlesscustody chain management | |
CN109547426B (zh) | 业务响应方法及服务器 | |
WO2021174870A1 (zh) | 网络安全风险检测方法、系统、计算机设备和存储介质 | |
CN114564757A (zh) | 一种区块链的数据审计方法、装置、设备及可读存储介质 | |
CN112328486A (zh) | 接口自动化测试方法、装置、计算机设备及存储介质 | |
CN111259382A (zh) | 恶意行为识别方法、装置、系统和存储介质 | |
CN112015494A (zh) | 第三方api工具调用方法、系统及装置 | |
JP2009129312A (ja) | 渉外営業支援システム及びその方法 | |
CN110602051A (zh) | 基于共识协议的信息处理方法及相关装置 | |
CN115756255A (zh) | 停车场设备的设备参数处理方法、装置、设备和存储介质 | |
CN115242608A (zh) | 告警信息的生成方法、装置、设备及存储介质 | |
WO2022032988A1 (zh) | 数据处理方法、装置、设备及介质 | |
CN110995658A (zh) | 网关保护方法、装置、计算机设备及存储介质 | |
CN114553563B (zh) | 无回显漏洞的验证方法、装置、电子设备及可读存储介质 | |
CN114362960B (zh) | 资源账户的数据监管方法、装置、计算机设备及介质 | |
US12008105B2 (en) | Protected QR code scanner using operational system override | |
KR102178048B1 (ko) | 개인정보 다운로드 탐지를 통한 데이터 모니터링 방법 | |
KR102178049B1 (ko) | 개인정보 자산과 사용현황 파악 기반의 데이터 모니터링 방법 | |
CN112100653B (zh) | 一种前端敏感信息处理的方法和系统 | |
CN117528519B (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 |