CN110535971A - 基于区块链的接口配置处理方法、装置、设备及存储介质 - Google Patents
基于区块链的接口配置处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110535971A CN110535971A CN201910872779.9A CN201910872779A CN110535971A CN 110535971 A CN110535971 A CN 110535971A CN 201910872779 A CN201910872779 A CN 201910872779A CN 110535971 A CN110535971 A CN 110535971A
- Authority
- CN
- China
- Prior art keywords
- interface
- node
- request
- service
- destination node
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种基于区块链的接口配置处理方法、装置、设备及存储介质,所述方法包括:接收终端通过入口页面上传的接口配置请求,所述接口配置请求包括请求头以及请求体;对所述请求头进行解析,得到节点标识;从所述请求体中提取所述节点标识对应的服务类型以及所述服务类型对应的接口配置信息,所述接口配置信息包括可调用接口标识;将所述可调用接口标识发送至所述节点标识对应的目标节点,使得所述目标节点基于所述可调用接口标识,对所述服务类型所对应的服务接口进行配置。本申请提供的方案可以有效的提高节点上接口配置的效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种基于区块链的接口配置处理方法、装置、设备及存储介质。
背景技术
随着计算机技术的发展,出现了区块链技术。区块链是一种包括分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链系统相较于其他分布式系统,具有去中心化的特征,区块链上的各个节点实现信息的自我验证、传递和管理。
不同区块链节点可以提供相同或不同类型的服务。在传统方式中,用户通常基于区块链节点所提供服务的服务类型对区块链节点进行服务权限的配置。由于区块链的去中心化特征,用户只能逐一对每个区块链节点提供服务所对应的接口进行配置,配置效率较低。
发明内容
基于此,有必要针对服务对应接口的配置效率较低的技术问题,提供一种基于区块链的接口配置处理方法、装置、计算机可读存储介质和计算机设备。
一种基于区块链的接口配置处理方法,包括:
接收终端通过入口页面上传的接口配置请求,所述接口配置请求包括请求头以及请求体;
对所述请求头进行解析,得到节点标识;
从所述请求体中提取所述节点标识对应的服务类型以及所述服务类型对应的接口配置信息,所述接口配置信息包括可调用接口标识;
将所述可调用接口标识发送至所述节点标识对应的目标节点,使得所述目标节点基于所述可调用接口标识,对所述服务类型所对应的服务接口进行配置。
一种基于区块链的接口配置处理装置,所述装置包括:
请求接收模块,用于接收终端通过入口页面上传的接口配置请求,所述接口配置请求包括请求头以及请求体;
请求头解析模块,用于对所述请求头进行解析,得到节点标识;
信息提取模块,用于从所述请求体中提取所述节点标识对应的服务类型以及所述服务类型对应的接口配置信息,所述接口配置信息包括可调用接口标识;
接口配置模块,用于将所述可调用接口标识发送至所述节点标识对应的目标节点,使得所述目标节点基于所述可调用接口标识,对所述服务类型所对应的服务接口进行配置。
一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收终端通过入口页面上传的接口配置请求,所述接口配置请求包括请求头以及请求体;
对所述请求头进行解析,得到节点标识;
从所述请求体中提取所述节点标识对应的服务类型以及所述服务类型对应的接口配置信息,所述接口配置信息包括可调用接口标识;
将所述可调用接口标识发送至所述节点标识对应的目标节点,使得所述目标节点基于所述可调用接口标识,对所述服务类型所对应的服务接口进行配置。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收终端通过入口页面上传的接口配置请求,所述接口配置请求包括请求头以及请求体;
对所述请求头进行解析,得到节点标识;
从所述请求体中提取所述节点标识对应的服务类型以及所述服务类型对应的接口配置信息,所述接口配置信息包括可调用接口标识;
将所述可调用接口标识发送至所述节点标识对应的目标节点,使得所述目标节点基于所述可调用接口标识,对所述服务类型所对应的服务接口进行配置。
上述基于区块链的接口配置处理方法、装置、计算机可读存储介质和计算机设备,通过终端入口页面上传的接口配置请求可以得到多个需要进行接口配置的节点对应的节点标识,根据接口配置请求中服务类型对应的接口配置信息即可对节点上服务对应的接口进行配置。相较于传统需要逐一对每个节点的服务所对应的接口进行配置的方式,可以一次对多个节点标识对应的节点进行服务接口配置,有效的提高了接口配置的效率。
附图说明
图1为一个实施例中基于区块链的接口配置处理方法的应用环境图;
图2为一个实施例中基于区块链的接口配置处理方法的流程示意图;
图3a为一个实施例中入口页面的界面示意图;
图3b为另一个实施例中入口页面的界面示意图;
图4为另一个实施例中基于区块链的接口配置处理方法的流程示意图;
图5为一个实施例中服务调用页面的界面示意图;
图6为一个实施例中基于区块链的接口配置处理方法的流程示意图;
图7为一个实施例中展示接口配置信息步骤的时序图;
图8为一个实施例中基于区块链的接口配置处理装置的结构框图;
图9为另一个实施例中基于区块链的接口配置处理装置的结构框图;
图10为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中基于区块链的接口配置处理方法的应用环境图。参照图1,该基于区块链的接口配置处理方法应用于基于区块链的接口配置处理系统。该基于区块链的接口配置处理系统包括终端110、服务器120和区块链130,区块链130上包括多个节点131。终端110和服务器120通过网络连接,服务器120通过网络与区块链130上的节点131连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。节点131具体可以是区块链系统中的区块链节点,一个区块链节点可以属于一条或者多条区块链。节点具体可以是台式终端或者移动终端,也可以是独立的服务器或者多个服务器组成的服务器集群。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。
应用服务层提供基于区块链方案的应用服务给业务参与方进行使用,区块链节点通过多个接口向外提供实际业务对应的多种类型的应用服务。例如,节点提供的服务可以包括:
1)钱包,用于提供进行电子货币的交易的功能,包括发起交易。即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币。
2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
如图2所示,在一个实施例中,提供了一种基于区块链的接口配置处理方法。本实施例主要以该方法应用于上述图1中的服务器120来举例说明。参照图2,该基于区块链的接口配置处理方法具体包括如下步骤:
S202,接收终端通过入口页面上传的接口配置请求,接口配置请求包括请求头以及请求体。
区块链系统可以是基于节点的业务系统,每个节点上可以具有至少一个接口,节点可以通过这些接口提供业务对应的不同类型的服务。节点具体可以是区块链上的区块链节点,接口具体可以是API(Application Programming Interface,应用程序编程接口)接口。每个节点可以提供至少一种类型的服务,每种服务的实现需要依赖一个或多个接口。具体通过哪些接口提供哪种类型的服务,可以由服务器对服务接口进行配置。
具体的,终端上可以运行有节点控制平台,节点控制平台可以为原生应用程序、网页应用程序或者在原生应用程序提供的环境中运行的应用子程序。服务器可以是节点控制平台对应的后台服务器。例如,节点控制平台可以是BaaS(Blockchain as a Service,区块链即服务)平台。用户可以通过节点控制平台注册、访问和部署区块链系统中的每个节点。节点控制平台可以提供多种访问方法以访问节点。例如,访问方法可以包括登录方法“login”、信息获取方法“getInfo”和秘钥配置方法“setKey”等。在一个实施例中,在区块链系统中,由于成本问题,大多数用户通常难以搭建拥有属于自己的一套区块链系统,此时可能会委托第三方进行区块链系统搭建。例如,可以利用节点控制平台快速搭建一个区块链系统。基于节点控制平台,用户可以注册节点,并将这些节点连成一条链,从而自行搭建区块链系统。
入口页面可以是终端基于节点控制平台所展示的一个页面,作为连接区块链上多个节点的统一入口。用户可以通过入口页面输入一个或多个节点分别对应的接口配置信息。用户可以通过多种方式输入接口配置信息。例如,用户可以通过文本形式录入节点对应的接口配置信息。用户也可以通过勾选入口页面中展示的内容确定接口配置信息。接口配置信息中包括提供对应服务类型的服务时可以调用的至少一个接口标识。接口配置信息中可以采用列表的形式记录服务类型与接口标识之间的映射关系。接口标识是可以唯一标识节点接口的信息,可以确定接口对应的接口编号、接口名称等信息作为接口标识。
终端可以根据用户通过输入设备输入的接口配置信息以及配置指令生成接口配置请求,并将接口配置请求发送至服务器。接口配置请求包括请求头和请求体。接口配置请求可以是终端与服务器之间进行通信的一种消息,具体可以是HTTP(HyperText TransferProtocol,超文本传输协议)请求。服务器可以接收终端上传的接口配置请求,根据接口配置请求进行目标节点的接口配置。
在一个实施例中,终端在生成接口配置请求时,可以使用空格隔开请求头和请求体。服务器在接收到接口配置请求后,获取空格在接口配置请求中所处的位置信息,并基于空格对应的位置信息将接口配置请求分隔为请求头和请求体两个部分。
S204,对请求头进行解析,得到节点标识。
其中,节点标识是指标记需要进行接口配置的节点的信息,节点标识对应的节点可以记作目标节点。节点标识与节点之间存在唯一对应的映射关系,服务器可以采用多种标记信息中的一种或多种的结合作为节点标识。例如,节点标识可以是节点对应的节点名称、节点IP(Internet Protocol,网络之间互连的协议)地址或者节点MAC地址(MediaAccess Control Address,媒体访问控制地址)等信息中的一种或多种组成的集合。
服务器在接收到终端上传的接口配置请求后,将接口配置请求分为请求头和请求体。请求头中记录了终端生成接口配置请求时拼接的访问域名,终端通过拼接的访问域名访问对应的节点。服务器可以从请求头中提取访问域名,并对访问域名进行解析,得到节点标识。
具体的,服务器上部署了对应的本地数据库。服务器可以在用户基于节点控制平台注册节点时,将用户为节点配置的节点标识和访问方法关联存储至本地数据库中。服务器可以对访问域名进行正则匹配,当匹配到入口页面对应的入口域名之后的字符串中包括节点标识格式的字符串和访问方法时,确定匹配成功。否则,匹配失败。当匹配成功时,服务器可以将节点标识格式的字符串确定为用户选择的节点的节点标识。
S206,从请求体中提取节点标识对应的服务类型以及服务类型对应的接口配置信息,接口配置信息包括可调用接口标识。
接口配置请求中的请求体用于记录需要服务器进行处理的数据。终端在生成接口配置请求时,可以将用户选择的进行接口配置的服务所对应的服务类型以及该服务类型对应的接口配置信息记录在请求体中。服务器可以从请求体中提取节点标识对应的服务类型和服务类型对应的接口配置信息。服务类型与接口配置信息之间存在一一对应的映射关系,接口配置信息中包括实现该服务类型所对应服务时可以调用接口的接口标识,可以将接口配置信息中记录的接口标识记作可调用接口标识。服务类型与可调用接口标识可以以列表的形式记录,该列表即为服务类型对应的接口配置列表。终端发送的一个接口配置请求的请求头中,可以包括多个节点对应的节点标识。请求体中可以包括每个节点标识分别对应的至少一种服务类型,以及每种服务类型对应的至少一个可调用接口标识。不同节点标识对应的服务类型之间可以是相同的,也可以是不同的。
S208,将可调用接口标识发送至节点标识对应的目标节点,使得目标节点基于可调用接口标识,对服务类型所对应的服务接口进行配置。
服务器将从请求体中提取出的可调用接口标识发送至节点标识对应的目标节点。当接口配置请求中包括多个节点标识对应的接口配置信息时,服务器分别将接口配置信息发送至多个节点标识各自对应的目标节点。目标节点可以根据服务类型对应的可调用接口标识,对实现该服务类型所对应服务时可以调用的接口进行配置,确定实现服务类型所对应服务时的可调用接口。
服务器可以在本地数据库中存储和维护所有节点的接口配置列表,列表中包括所有节点可以提供的服务的服务类型,以及提供该服务类型的服务时节点可以调用的接口,即列表中记录了节点标识、服务类型以及可调用接口标识之间的映射关系。服务器可以根据终端上传的接口配置请求更新存储的接口配置列表。每个节点也可以将该节点可提供服务的服务类型与对应可调用接口标识的对应关系以列表的形式存储在各自的节点数据库中。
在一个实施例中,服务器或节点可以将接口配置列表作为接口权限列表。在节点需要调用接口提供服务时,服务器或节点根据服务类型与可调用接口标识之间的关系校验所提供的服务是否具有调用接口的权限。当节点、需要提供服务的服务类型以及需要调用的接口之间的映射关系与接口权限列表中的任一映射关系一致时,确定权限校验成功,否则确定校验失败。相较于传统只对节点所提供服务的服务类型设置权限,通过将每个节点的权限划分细化到接口,实现了权限的最小化,不仅可以防止节点提供没有权限的服务,还可以防止节点调用没有权限的接口,有效的提高了节点数据的安全性。
在本实施例中,服务器通过解析接收到的终端通过入口页面上传的接口配置信息,可以得到至少一个节点标识、每个节点标识分别对应的至少一种服务类型,以及每种服务类型对应的接口配置信息,服务器可以将接口配置信息中的可调用接口标识发送至节点标识对应的目标节点,即可使至少一个目标节点根据可调用接口标识对对应服务类型的服务接口进行配置。相较于传统用户逐一对每个节点的接口进行配置的方式,本实施例中用户发送一次接口配置请求,服务器可以同时对多个节点标识对应的节点进行服务接口配置,有效的提高了接口配置的效率。
在一个实施例中,当用户需要对节点上提供服务的接口进行配置时,用户可以基于用户标识登录节点控制平台,并在节点控制平台基于入口域名访问入口页面。其中,用户标识是指能够标识用户身份的信息,用户标识与用户身份之间存在唯一对应的映射关系。用户标识可以是多种标识用户身份的信息。例如,用户标识可以是用户对应的用户账号、联系电话以及证件号等。入口域名为入口页面对应的URL(Uniform Resource Locator,统一资源定位符),入口域名是用于在数据传输时标识服务器电子方位的信息,可以是一串用点分隔的名字组成的服务器的名称。
终端可以在入口页面中展示多个节点对应的节点信息。如图3a所示,图3a为一个实施例中终端所展示的入口页面的界面示意图。终端可以在入口页面中展示节点名称分别为“节点A”、“节点B”以及“节点C”对应的节点信息,用户可以从入口页面中选择进行接口配置的目标节点。终端可以根据用户触发的选择控件展示该目标节点所提供服务的服务类型和接口标识。如图3b所示,图3b为另一个实施例中入口页面的界面示意图。入口页面中展示了节点名称为“节点A”的节点所对应的服务名称分别为“数字资产”和“共享账本”的服务类型,以及每种服务类型分别对应的接口编号。在其中一个实施例中,用户可以通过在入口页面通过勾选服务类型对应的服务所能调用的接口标识,输入服务类型和对应的接口配置信息,以此避免用户手动输入的繁琐操作,减少了手动输入的失误率,有效的提高了接口配置的效率。
终端可以接收用户通过输入设备在入口页面触发的配置操作,根据配置操作确定用户所指向的节点标识、该节点标识对应的服务类型以及服务类型对应的接口配置信息。用户可以在入口页面对多个节点中多种类型的服务接口进行配置。终端可以基于第一预设标识符将节点标识以及访问方法进行拼接,得到域名后缀,并基于第二预设标识符将域名后缀拼接至入口页面对应的入口域名之后,得到访问域名。其中,第一预设标识符可以为“/”,“=”,“_”,“&”,“#”,“@”或“*”。第二预设标识符可以为“/”。在用户对节点接口进行配置时,访问方法可以默认为登录方法。终端可以将访问域名记录在接口配置请求的请求头中,将服务类型对应的接口配置信息记录在接口配置请求的请求体中,将请求头与请求体拼接得到接口更新请求,并将接口更新请求上传至服务器。
在本实施例中,终端通过将入口页面的入口域名和节点标识、访问方法进行拼接得到访问域名,根据访问域名生成接口配置请求并发送至服务器。服务器根据接口配置请求中的访问域名就可以确定目标节点的节点标识和访问方法,服务器根据一个访问域名即可访问多个目标节点,可以实现域名共享的效果,不需要再为每个节点都配置一个域名,有效的节省了域名资源。
在一个实施例中,上述对请求头进行解析,得到节点标识的步骤包括:从请求体中提取访问域名;获取与入口页面对应的入口域名;提取访问域名中入口域名之后的后缀域名;调用预设的正则表达式对后缀域名进行正则匹配,得到节点标识。
其中,后缀域名是指访问域名中拼接在入口域名之后的字符串,该字符串具体可以是由用户选择进行接口配置的目标节点的节点标识和访问目标节点的访问方法拼接得到的。入口域名可以是由一串用点分隔的名字组成的某一台计算机或计算机组的名称。例如,入口域名可以为“www.baas.qq.com”。入口域名也可以是入口域名所映射的IP地址。例如,入口域名可以为“192.123.0.1”。入口域名所映射的IP地址可以是终端基于入口域名在域名服务器与存储的域名与IP地址的映射表中查询得到的。可以理解,目标节点的访问域名也可以是基于入口域名所对应的IP地址拼接得到的。
具体的,当入口域名为计算机名称时,终端可以根据入口域名直接访问入口页面。终端可以对访问域名进行正则匹配,得到节点标识和访问方法。当入口域名为IP地址时,终端可以基于入口域名所对应的IP地址访问入口页面。服务器获取预存储的IP地址,记作入口IP地址。服务器可以对访问域名进行解析,判断访问域名中是否包含入口IP地址。
当访问域名中包括入口IP地址时,服务器可以基于入口IP地址对访问域名进行分割,得到入口IP地址之后的后缀域名。服务器可以确定入口IP地址对应的字符数量。服务器在访问域名中该字符数量所对应顺序的字符与下一顺序字符之间确定分割位置,在分割位置对访问域名进行分割,得到入口IP地址和后缀域名。例如,请求头中的访问域名可以为“192.123.0.1/192.168.10.11/login”。其中,“192.123.0.1”为入口IP地址,“192.168.10.11”为节点标识,“login”为访问方法。入口IP地址对应的字符数量为11,服务器可以将第11个字符“1”与第12个字符“/”之间的位置确定为分割位置,分割得到后缀域名“/192.168.10.11/login”。
在一个实施例中,服务器可以基于第二预设符对访问域名进行分割,得到入口IP地址和后缀域名。
服务器可以调用预设的正则表达式,根据预设的正则表达式对后缀域名进行正则匹配,得到节点标识。例如,当预设的正则表达式包括“^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/login”、“^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$/getInfo”时,可以基于“^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$”匹配得到“192.168.10.11”,基于“/login”匹配得到“/login”。其中,“^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$”中的“[0-9]{1,3}”表示匹配1-3位0-9的阿拉伯数字;“\.”表示匹配小数点“.”;“{3}”表示重复3次匹配1-3位0-9的阿拉伯数字的过程。
在一个实施例中,服务器在得到后缀域名后,可以基于第一预设符对后缀域名进行分割,得到节点标识和对应的访问方法。
在本实施例中,服务器通过从请求体的访问域名中提取入口域名之后的后缀域名,对后缀域名进行正则匹配,可以快速匹配出接口配置请求中的节点标识,进而快速的将请求体中的接口配置信息发送至节点标识对应的目标节点,使得目标节点根据接口配置信息对服务接口进行配置,有效的提高了接口的配置效率。
在一个实施例中,接口配置请求携带用户标识,上述方法还包括:获取已注册节点信息;从已注册节点信息中获取与用户标识相关联的节点标识集合;校验节点标识是否属于节点标识集合;当节点标识属于节点标识集合时,执行将可调用接口标识发送至节点标识对应的目标节点的步骤。
接口配置请求中还携带用户标识,用户标识可以用于标识登录节点控制平台的用户所对应的用户身份。服务器可以根据用户标识对相应用户是否具有控制目标节点的权限进行校验,判断用户是否具有配置目标节点上服务对应接口的权限。
具体的,用户在基于节点控制平台注册节点时,服务器可以记录注册的节点对应配置的节点信息,节点信息可以包括节点对应的节点名称、节点IP地址、公钥、私钥签名、所提供服务的服务类型以及用户标识等。服务器可以将所有已注册的节点对应的节点信息关联存储在本地数据库中。服务器还可以根据节点标识划分不同节点标识对应的节点信息,并将不同标识对应的节点信息发送至各自节点标识对应的节点。每个节点上都部署了各自对应的节点数据库,节点可以将该节点的已注册节点信息存储在对应的节点数据库中。
服务器可以从本地数据库中获取所有节点对应的已注册节点信息,并从已注册节点信息中获取与携带的用户标识相关联的节点信息,从与用户标识相关联的节点信息中提取节点标识生成节点标识集合。其中,节点标识集合是由服务器本地数据库中所有与用户标识相关联的节点标识组成的集群。
服务器可以将从接口配置请求中解析得到的节点标识与节点标识集合进行比对,校验节点标识是否属于用户标识对应的节点标识集合。当节点标识属于节点标识集合时,确定身份校验成功,可以认为用户标识对应的用户具有配置目标节点上服务对应的接口的权限。服务器可以执行后续将可调用接口标识发送至节点标识对应的目标节点的步骤,以继续进行服务对应接口的配置。在一个实施例中,当节点标识不属于节点标识集合时,确定身份校验失败,可以认为用户标识对应的用户不具有配置目标节点上服务对应的接口的权限。服务器可以向终端返回身份校验失败提示。
在本实施例中,服务器通过用户标识相关联的节点标识结合对接口配置请求中请求进行接口配置的节点标识进行校验,校验用户标识所对应的用户是否具有对目标节点上的接口进行配置的权限。只有在校验成功时服务器才继续执行后续发送可调用接口标识的步骤,防止不具有权限的用户配置目标节点上的接口,有效的提高了节点接口配置的安全性。同时,也避免了服务器执行一些无谓的操作,节省了服务器的运行资源。
在一个实施例中,当服务器校验成功后,服务器可以基于用户标识生成权限验证请求,并将权限验证请求发送至与节点标识对应的目标节点。目标节点从权限验证请求中提取用户标识,并验证目标节点对应的节点数据库中是否存在该用户标识。当节点数据库中存在用户标识时,确定用户具有对节点标识所对应的目标节点接口的配置权限。目标节点向服务器返回验证成功的结果,服务器在接收到验证成功的结果后,继续执行将可调用接口标识发送至节点标识对应的目标节点的步骤。
在本实施例中,在服务器校验成功后,再由目标节点对用户标识进行验证。通过服务器与目标节点的双重权限验证,有效的提高了权限验证的可靠性,保证了接口配置的安全性。
在一个实施例中,当基于节点控制平台进行节点注册时,用户可以为所注册的节点配置相应的密钥对,并将密钥对与注册节点的节点标识发送至服务器。服务器可以将密钥对和相应的节点标识关联存储至本地数据库中。不同的节点上还部署有各自对应的节点数据库,服务器可以将用户通过终端配置的密钥对发送至节点标识对应的节点,使得节点将密钥对存储至各自的节点数据库中。密钥对包括公钥和对应私钥,服务器还可以仅将节点标识对应的公钥存储至本地数据库中,将密钥对中的私钥发送至节点标识对应的节点,使得节点将私钥存储在节点数据库中。服务器在解析访问域名后,可以根据得到的节点标识从本地数据库中查询与节点标识对应的公钥,并基于公钥对待更新服务类型对应的接口配置信息进行加密,根据加密后的接口配置信息发送至目标节点。目标节点需要从节点数据库中查询与公钥相对应的私钥,根据私钥对加密后的接口配置信息进行解密,才能得到接口配置信息中的可调用接口标识。
在本实施例中,服务器通过将加密后的接口配置信息发送至目标节点,可以降低接口配置信息在传输的过程中被篡改的概率,服务器可以将接口配置信息完整、不失真的发送至节点标识对应的目标节点。同时,目标节点在接收到接口配置信息后,只能根据与公钥对应的私钥才能对接口配置信息进行解密,提高了接口配置信息的安全性,也避免节点基于不对应的接口配置信息进行接口配置,有效的提高了接口配置的准确性。
在一个实施例中,如图4所示,上述方法还包括:
S402,接收服务调用请求,服务调用请求携带目标节点标识以及目标节点标识对应的目标服务类型。
S404,确定在目标节点标识对应的目标节点上,目标服务类型对应的服务所需的接口标识。
S406,根据目标节点标识获取目标服务类型对应的可调用接口标识。
S408,当可调用接口标识包括所需的接口标识时,将服务调用请求发送至目标节点标识对应的目标节点。
服务器接收到的服务调用请求可以是由终端或者服务器生成的,服务调用请求中携带目标节点标识以及目标节点标识对应的目标服务类型。目标节点标识是指提供请求调用的服务的目标节点所对应的节点标识,目标服务类型是指调用目标节点提供的服务所对应的服务类型。服务器可以根据服务调用请求调用目标节点上目标服务类型对应的服务。
具体的,终端可以通过多种方式触发生成服务调用请求,并将服务调用请求发送至服务器,以使服务器根据服务调用请求调用节点提供对应的服务。例如,可以当用户需要节点服务时,通过触发终端上的控件选择目标节点以及需要目标节点提供的目标服务。例如,如图5所示,图5为一个实施例中终端所展示的服务调用页面的界面示意图。终端可以在服务调用页面中展示多个节点对应的节点标识,以及每个节点标识所提供服务的服务类型。用户可以通过服务调用页面选择提供服务的节点和需要调用的服务。终端通过用户下发的服务调用指令生成服务调用请求并发送至服务器。终端还可以根据实际运行需求触发服务调用请求以调用目标服务。服务器也可以在运行过程中根据实际运行需求或者获取到的服务调用任务生成服务调用请求以调用目标服务。
服务器可以确定在目标节点标识对应的目标节点上,目标服务类型对应的服务所需要调用接口的接口标识。服务器可以通过调用所需的接口标识对应的接口提供目标服务类型对应的服务,所需的接口标识可以是节点上多个接口所对应接口标识中的一个或多个。服务器可以从本地数据库中提取进行接口配置时关联存储的服务类型对应的接口配置信息,接口配置信息中包括服务类型对应的可调用接口标识。
服务器可以根据服务调用请求中携带的目标节点标识和目标服务类型,按照节点、服务类型和接口标识之间的映射关系从本地数据库中获取对应的接口配置信息。在目标服务类型对应的接口配置信息中可以包括一个或多个可调用接口标识,也可以不包括任何可调用接口标识。
服务器可以将接口配置信息作为接口权限信息对需要调用接口的权限进行校验,判断是否具有调用目标接口以实现目标服务的权限。当本地数据库存储的接口权限信息中的可调用接口标识包括服务调用请求所需调用的接口标识时,确定权限校验成功,服务器可以将服务调用请求发送至目标节点标识对应的目标节点,以此通过调用接口标识对应的目标接口提供目标服务类型对应的服务,响应服务调用请求。当本地数据库存储的接口权限信息中的可调用接口标识不包括服务调用请求所需调用的接口标识时,确定权限校验失败,服务器不执行服务调用请求。在其中一个实施例中,在权限校验失败时,服务器可以向终端返回接口权限校验失败提示。
在一个实施例中,在服务器对所需调用接口的接口标识进行权限校验之前,服务器还可以根据本地数据库存储的接口权限列表对目标节点标识对应的目标服务类型进行校验。当目标节点标识对应的目标服务类型之间的对应关系与接口权限列表中任意一个节点标识与服务类型的对应关系相同时,确定服务类型权限校验成功,表示该目标节点标识对应的目标节点具有提供目标服务类型对应服务的权限,服务器可以继续对所需调用接口的接口标识进行校验。当目标节点标识对应的目标服务类型之间的对应关系与接口权限列表中所有节点标识与服务类型的对应关系都不一致时,确定服务类型权限校验失败,表示该目标节点标识对应的目标节点不具有提供目标服务类型对应服务的权限,服务器可以向终端返回服务类型权限校验失败提示。服务器通过接口权限列表对服务调用请求所要调用节点的服务类型进行权限校验,防止节点根据服务调用请求提供不具有权限的服务类型的服务。可以对服务调用请求所要调用服务的服务类型以及需要调用的接口进行权限校验,实现了节点权限的最小化,有效的提高了节点数据的安全性。
在一个实施例中,服务器还可以将服务调用请求发送至目标节点标识对应的目标节点,使得目标节点根据节点数据库中存储的接口权限信息对所要提供的服务类型和需要调用的接口进行权限校验。通过服务器和节点的双重权限校验,可以大大提高权限校验的可靠性,保证服务调用请求是在有权限的情况下通过接口调用服务,有效的提高了节点数据的安全性。
在本实施例中,服务器通过存储的接口权限信息,对服务调用请求所需要调用接口的接口标识进行权限校验,防止不具有调用对应接口权限的请求调用目标接口,有效的提高了节点数据的安全性。
在一个实施例中,服务调用请求还携带私钥签名,上述方法还包括:从已注册节点信息中获取目标节点标识对应的公钥信息;将私钥签名与公钥信息进行匹配;当匹配成功时,执行确定在目标节点标识对应的目标节点上,目标服务类型对应的服务所需的接口标识的步骤。
当服务调用请求是由用户通过终端发送时,服务器在对服务调用请求所需要调用的服务类型和接口进行权限校验之前,还可以对发送服务调用请求的用户身份进行校验,确定用户标识所对应用户的身份。具体的,用户通过用户标识登录节点控制平台,通过节点控制平台上传服务调用请求时,同时上传私钥签名。服务器解析服务调用请求得到私钥签名后,从本地数据库的已注册节点信息中获取目标节点标识对应的公钥信息,目标节点标识对应的公钥信息中包括多个可以访问目标节点的密钥对中的公钥。用户可以通过终端上传多个节点标识对应的密钥对至服务器。服务器可以将密钥对记录在本地数据库中该节点标识对应的节点信息中,并将密钥对发送至对应节点中,以使节点将密钥对存储在对应的节点数据库中。
服务器可以将终端上传的私钥签名与公钥信息进行匹配。当匹配成功时,表示私钥签名对应的用户具有访问目标节点的身份权限,服务器可以继续执行确定在目标节点标识对应的目标节点上,目标服务类型对应的服务所需的接口标识的步骤。当匹配失败时,表示私钥签名对应的用户不具有访问目标节点的身份权限,服务器可以向终端返回身份验证失败提示。
在本实施例中,服务器可以在对调用节点上的服务类型和接口进行权限校验之前,根据终端上传的私钥签名验证对应用户的身份信息,做到真正具有访问身份的用户才可以调用目标节点上的服务,以此避免用户账号等用户标识泄露造成的节点数据危险,有效的提高了节点数据的安全性。
在一个实施例中,上述将服务调用请求发送至目标节点标识对应的目标节点的步骤包括:确定服务调用请求对应的接口调用链路;获取接口调用链路中每个接口对应的状态信息;根据状态信息计算每个接口的调用成功概率;当每个接口的调用成功概率大于阈值时,调用接口调用链路中的接口响应服务调用请求。
在服务器通过上述实施例中的任意一种或多种权限校验方式对服务调用请求对应的信息进行校验,确定校验成功后,服务器可以将服务调用请求发送至目标节点标识对应的目标节点,根据服务调用请求调用目标接口,提供目标服务类型对应的服务。
其中,接口调用链路是指目标节点与响应服务调用请求中需要依赖的接口之间的链路,响应服务调用请求所需要依赖的接口也可以记作服务调用中的目标接口。目标节点响应于同一服务调用请求可能需要调用一个或多个目标接口,从而服务调用请求所对应的接口调用链路也可以有一条或者多条。服务器可以根据服务调用请求携带的目标节点标识、目标服务类型以及接口配置信息,确定服务调用请求对应的接口调用链路。
具体的,服务器可以根据本地服务器中存储的接口配置信息,确定服务调用请求所调用的服务类型对应的可调用接口标识。服务器可以根据接口标识生成状态查询请求,并将状态查询请求发送至目标节点。目标节点根据状态查询请求中的接口标识,与接口标识对应的目标接口建立接口调用链路,并将状态查询请求通过接口调用链路转发至相应的接口。
状态信息是指能够直接或间接反映接口服务能力的信息,如接口在预设时间分片的请求响应状况信息、资源消耗状况信息等。请求响应状况信息包括接口在预设时间分片对接收到的调用请求响应或丢弃的记录等。资源消耗状况信息包括接口所属服务器中CPU(Central Processing Unit,中央处理器)、内存等资源占用量等。目标接口接收状态查询请求后,将自身状态信息打包发送至目标节点。目标节点转发状态信息至服务器。
服务器根据目标接口的状态信息,计算目标接口的资源空闲率,并根据资源空闲率确定每个接口的调用成功概率。服务器通过将每个接口的调用成功概率分别与阈值进行比较,从而确定是否下发服务调用请求。其中,阈值是指预先设置的可判定服务调用请求能够被成功响应的最小概率值。阈值越高,表示服务调用请求能够被成功响应的置信度越高。阈值可以根据需求自由设定,如可以设定为50%。在其中一个实施例中,不同服务调用请求所依赖接口调用链路对应的阈值可以是相同或者不同的。例如,服务调用请求所需要调用的接口数量越多,可以相应减小阈值。不同接口对应调用成功概率的阈值也可以是相同或者不同的。
服务器将每个接口的调用成功概率分别与阈值进行比较,当接口调用链路中的每个接口调用成功概率均大于阈值时,在一定置信程度上可以判定服务调用请求可以成功响应,服务器可以将服务调用请求转发至接口调用链路中的节点,调用节点中的可调用接口响应该服务调用请求。当接口调用链路中存储接口的调用成功概率小于或等于阈值时,服务器可以丢弃服务调用请求,向终端返回服务调用失败提示,以此拒绝可预见失败的服务调用请求,不再进行后续的调用操作,从而减少不必要的调用开销,节约接口资源。
在本实施例中,服务器接收到服务调用请求后,可以根据服务调用请求所依赖的接口调用链路中每个接口的状态信息,对每个接口的调用成功概率进行预测分析。通过将调用成功概率与阈值进行比较,可以发现是否有接口处于过载状态,进而提前评估服务调用请求的响应情况。只有当全部接口的调用成功概率大于阈值时,才调用接口调用链路中的每个接口响应服务调用请求,从而减少不必要的调用开销,有效的节约了接口资源。
在一个实施例中,如图6所示,上述方法还包括:
S602,当接收到终端通过入口页面上传的第一展示请求时,从第一展示请求中提取第一展示域名。
S604,对第一展示域名进行解析,得到待展示节点标识和访问方法。
S606,将基于访问方法生成的第二展示请求发送至待展示节点标识对应的目标节点。
S608,将目标节点发送的待展示节点标识对应的可调用接口标识返回至终端,使得终端从入口页面跳转至待展示节点标识对应的节点服务页面,并在节点服务页面展示可调用接口标识。
用户在通过节点控制平台对节点上服务类型对应的接口进行配置后,还可以查看节点上服务类型与接口的配置结果。当用户需要查看接口的配置信息时,可以通过触发入口页面中的展示控件,使得终端获取想要查看的接口的配置信息,并在终端的节点服务页面进行展示。
具体的,用户可以通过入口页面选择查看的节点,可以将用户选择查看接口配置信息的节点对应的节点标识记作待展示节点标识。终端可以按照上述实施例中拼接访问域名的方式,将入口页面的入口域名、待展示节点标识以及访问方法拼接得到第一展示域名。终端将第一展示域名记录在请求头中,并根据访问方法生成第一展示请求。其中,访问方法可以是上述实施例中的信息获取方法“getInfo”。终端将生成的第一展示请求发送至服务器。
服务器在接收到终端上传的第一展示请求后,服务器可以按照上述实施例中的解析方式从第一展示请求的请求头中提取第一展示域名,并对第一展示域名进行解析。服务器调用正则表达式对第一展示域名进行正则匹配,当匹配到入口域名之后的字符串中包括一个节点标识格式的字符串和访问方法时,将该节点标识格式的字符串确定为待展示节点标识,将匹配到的访问方法请确定为访问目标节点的访问方法。
服务器可以从第一展示域名中删除入口页面对应的入口域名和第一预设标识符,得到访问目标节点的第二展示域名。服务器可以基于第二展示域名重新封装请求头,并根据重新封装后的请求头和从第一展示请求中提取出的请求体拼接得到第二展示请求。服务器可以根据待展示节点标识确定目标节点子啊区块链中所处的位置,基于位置信息将第二展示请求发送至目标节点。
在终端上还可以运行有节点管理平台,节点管理平台也可以为原生应用程序、网页应用程序或者在原生应用程序提供的环境中运行的应用子程序。用户可以通过节点管理平台单独对每个对应的节点进行管理。节点可以是节点管理平台对应的后台服务器。当目标节点对第二展示请求进行解析后,可以根据第二展示请求中的信息获取方法从对应的节点数据库中获取相应的页面数据。页面数据中包括该节点的接口配置信息,接口配置信息中包括每种服务类型对应的可调用接口标识。目标节点可以响应第二展示请求,将接口配置信息和页面数据返回至服务器。服务器响应第一展示请求,转发接口配置信息和页面数据至对应终端,使得终端根据页面数据从节点控制平台的入口页面跳转至节点管理平台的节点服务页面,并在节点服务页面中展示节点可提供服务的服务类型和对应的可调用接口标识。在一个实施例中,终端还可以基于节点管理平台所展示的节点服务页面,直接获取该节点的接口配置信息并展示。
参照图7,图7为一个实施例中展示接口配置信息的时序图。如图7所示,当用户打开入口页面,并在入口页面中输入待展示节点标识与访问方法后,终端基于入口页面的入口域名、待展示节点标识与访问方法生成目标节点的第一展示域名,并基于第一展示域名生成对应的第一展示请求。服务器接收第一展示请求,从第一展示请求中提取出第一展示域名,并解析第一展示域名,得到待展示节点标识与访问方法,基于待展示节点标识与访问方法重新生成第二展示请求。目标节点接收第二展示请求,根据第二展示请求中的访问方法查找对应的节点服务页面的页面数据,页面数据中包括该节点的接口配置信息。然后将页面数据返回服务器。服务器接收页面数据,将页面数据返回至终端,以使终端能够根据页面数据对应显示节点服务页面,并在节点服务页面展示接口配置信息中的可调用接口标识。
在本实施例中,终端通过入口页面生成第一展示请求并发送至服务器,服务器根据第一展示请求中的第一展示域名可以得到待展示节点标识和访问方法,在一个展示域名的基础上根据访问方法即可访问多个目标节点,从入口页面跳转至基于页面数据展示的节点服务页面,展示一个或多个节点的接口配置信息,可以实现域名共享的效果,不需要再为每个节点都配置一个域名,有效的节省了域名资源。
在一个实施例中,终端中的应用程序、小程序与网页之间可以自动切换。例如,节点控制平台为应用程序,节点管理平台为小程序。当终端接收到目标节点返回的页面数据时,会根据页面数据从应用程序跳转至小程序,然后基于小程序展示相应的节点服务页面。
在一个实施例中,在将可调用接口标识发送至节点标识对应的目标节点之前,上述方法还包括:记录节点标识的服务类型对应的历史接口标识;当接收到终端发送的权限撤回请求时,将历史接口标识发送至权限撤回请求携带的节点标识所对应的目标节点,使得目标节点将可调用接口标识替换为历史接口标识并存储。
服务器每次在将可调用接口标识发送至节点标识对应的目标节点,使得目标节点根据可调用接口标识对服务类型对应的接口进行配置之前,可以记录目标节点中服务类型对应的当前接口标识,在节点根据可调用接口标识重新配置后,之前记录的服务类型对应的当前接口标识即为历史接口标识。服务器可以将服务类型对应的历史接口标识与节点标识关联存储至本地数据库中。可以理解的,对节点上服务类型对应的接口进行配置相当于确定节点可以提供服务的服务类型权限和调用接口的权限。当用户需要回撤对服务接口进行配置所下发的权限时,可以通过终端选择需要回撤接口权限的节点,生成并向服务器发送权限撤回请求。本实施例中可以将需要回撤接口权限的节点记作目标节点。服务器在接收到终端发送的权限撤回请求后,根据权限撤回请求将历史接口标识发送至节点标识对应的目标节点,使得目标节点将服务类型对应的可调用接口标识替换为历史接口标识,以此更新服务类型对应的接口配置信息,并更新后的接口配置信息存储在节点数据库中。服务器同时将本地服务器中节点标识对应的接口配置信息进行更新并存储。
在本实施例中,用户在需要回撤接口配置时,可以通过终端向服务器发送权限撤回请求。服务器根据接收到的权限撤回请求回撤目标节点对应服务类型的接口配置,有效的提高了接口配置的灵活性。
图2、4和6分别为一个实施例中基于区块链的接口配置处理方法的流程示意图。应该理解的是,虽然图2、4和6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、4和6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,提供了一种基于区块链的接口配置处理装置800,包括:请求接收模块802、请求头解析模块804、信息提取模块806和接口配置模块808,其中:
请求接收模块802,用于接收终端通过入口页面上传的接口配置请求,接口配置请求包括请求头以及请求体。
请求头解析模块804,用于对请求头进行解析,得到节点标识。
信息提取模块806,用于从请求体中提取节点标识对应的服务类型以及服务类型对应的接口配置信息,接口配置信息包括可调用接口标识。
接口配置模块808,用于将可调用接口标识发送至节点标识对应的目标节点,使得目标节点基于可调用接口标识,对服务类型所对应的服务接口进行配置。
在本实施例中,服务器通过解析接收到的终端通过入口页面上传的接口配置信息,可以得到至少一个节点标识、每个节点标识分别对应的至少一种服务类型,以及每种服务类型对应的接口配置信息,服务器可以将接口配置信息中的可调用接口标识发送至节点标识对应的目标节点,即可使至少一个目标节点根据可调用接口标识对对应服务类型的服务接口进行配置。相较于传统用户逐一对每个节点的接口进行配置的方式,本实施例中用户发送一次接口配置请求,服务器可以同时对多个节点标识对应的节点进行服务接口配置,有效的提高了接口配置的效率。
在一个实施例中,接口配置请求携带用户标识,上述基于区块链的接口配置处理装置还包括身份校验模块,用于获取已注册节点信息;从已注册节点信息中获取与用户标识相关联的节点标识集合;校验节点标识是否属于节点标识集合;当节点标识属于节点标识集合时,执行将可调用接口标识发送至节点标识对应的目标节点的步骤。
在一个实施例中,如图9所示,上述基于区块链的接口配置处理装置800,还包括:服务调用模块810、接口确定模块812、接口标识获取模块814和服务响应模块816,其中:
服务调用模块810,用于接收服务调用请求,服务调用请求携带目标节点标识以及目标节点标识对应的目标服务类型。
接口确定模块812,用于确定在目标节点标识对应的目标节点上,目标服务类型对应的服务所需的接口标识。
接口标识获取模块814,用于根据目标节点标识获取目标服务类型对应的可调用接口标识。
服务响应模块816,用于当可调用接口标识包括所需的接口标识时,将服务调用请求发送至目标节点标识对应的目标节点。
在一个实施例中,上述服务响应模块816还用于确定服务调用请求对应的接口调用链路;获取接口调用链路中每个接口对应的状态信息;根据状态信息计算每个接口的调用成功概率;当每个接口的调用成功概率大于阈值时,调用接口调用链路中的接口响应服务调用请求。
在一个实施例中,服务调用请求还携带私钥签名,上述身份校验模块还用于从已注册节点信息中获取目标节点标识对应的公钥信息;将私钥签名与公钥信息进行匹配;当匹配成功时,执行确定在目标节点标识对应的目标节点上,目标服务类型对应的服务所需的接口标识的步骤。
在一个实施例中,请求头解析模块804还用于从请求头中提取访问域名;获取与入口页面对应的入口域名;提取访问域名中入口域名之后的后缀域名;调用预设的正则表达式对后缀域名进行正则匹配,得到节点标识。
在一个实施例中,上述基于区块链的接口配置处理装置还包括配置展示模块,用于当接收到终端通过入口页面上传的第一展示请求时,从第一展示请求中提取第一展示域名;对第一展示域名进行解析,得到待展示节点标识和访问方法;将基于访问方法生成的第二展示请求发送至待展示节点标识对应的目标节点;将目标节点发送的待展示节点标识对应的可调用接口标识返回至终端,使得终端从入口页面跳转至待展示节点标识对应的节点服务页面,并在节点服务页面展示可调用接口标识。
在一个实施例中,上述基于区块链的接口配置处理装置还包括配置撤回模块,用于记录节点标识的服务类型对应的历史接口标识;当接收到终端发送的权限撤回请求时,将历史接口标识发送至权限撤回请求携带的节点标识所对应的目标节点,使得目标节点将可调用接口标识替换为历史接口标识并存储。
图10示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的服务器120。如图10所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现基于区块链的接口配置处理方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行基于区块链的接口配置处理方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的基于区块链的接口配置处理装置可以实现为一种计算机程序的形式,计算机程序可在如图10所示的计算机设备上运行。计算机设备的存储器中可存储组成该基于区块链的接口配置处理装置的各个程序模块,比如,图8所示的请求接收模块802、请求头解析模块804、信息提取模块806和接口配置模块808。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的基于区块链的接口配置处理方法中的步骤。
例如,图10所示的计算机设备可以通过如图8所示的基于区块链的接口配置处理装置中的请求接收模块802执行接收终端通过入口页面上传的接口配置请求,接口配置请求包括请求头以及请求体。计算机设备可通过请求头解析模块804执行对请求头进行解析,得到节点标识。计算机设备可通过信息提取模块806执行从请求体中提取节点标识对应的服务类型以及服务类型对应的接口配置信息,接口配置信息包括可调用接口标识。计算机设备可通过接口配置模块808执行将可调用接口标识发送至节点标识对应的目标节点,使得目标节点基于可调用接口标识,对服务类型所对应的服务接口进行配置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述基于区块链的接口配置处理方法的步骤。此处基于区块链的接口配置处理方法的步骤可以是上述各个实施例的基于区块链的接口配置处理方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述基于区块链的接口配置处理方法的步骤。此处基于区块链的接口配置处理方法的步骤可以是上述各个实施例的基于区块链的接口配置处理方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (11)
1.一种基于区块链的接口配置处理方法,包括:
接收终端通过入口页面上传的接口配置请求,所述接口配置请求包括请求头以及请求体;
对所述请求头进行解析,得到节点标识;
从所述请求体中提取所述节点标识对应的服务类型以及所述服务类型对应的接口配置信息,所述接口配置信息包括可调用接口标识;
将所述可调用接口标识发送至所述节点标识对应的目标节点,使得所述目标节点基于所述可调用接口标识,对所述服务类型所对应的服务接口进行配置。
2.根据权利要求1所述的方法,其特征在于,所述接口配置请求携带用户标识,所述方法还包括:
获取已注册节点信息;
从所述已注册节点信息中获取与所述用户标识相关联的节点标识集合;
校验所述节点标识是否属于所述节点标识集合;
当所述节点标识属于所述节点标识集合时,执行所述将所述可调用接口标识发送至所述节点标识对应的目标节点的步骤。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收服务调用请求,所述服务调用请求携带目标节点标识以及所述目标节点标识对应的目标服务类型;
确定在所述目标节点标识对应的目标节点上,所述目标服务类型对应的服务所需的接口标识;
根据所述目标节点标识获取所述目标服务类型对应的可调用接口标识;
当所述可调用接口标识包括所述所需的接口标识时,将所述服务调用请求发送至所述目标节点标识对应的所述目标节点。
4.根据权利要求3所述的方法,其特征在于,所述将所述服务调用请求发送至所述目标节点标识对应的所述目标节点包括:
确定所述服务调用请求对应的接口调用链路;
获取所述接口调用链路中每个接口对应的状态信息;
根据所述状态信息计算每个接口的调用成功概率;
当每个接口的所述调用成功概率大于阈值时,调用所述接口调用链路中的接口响应所述服务调用请求。
5.根据权利要求3所述的方法,其特征在于,所述服务调用请求还携带私钥签名,所述方法还包括:
从所述已注册节点信息中获取所述目标节点标识对应的公钥信息;
将所述私钥签名与所述公钥信息进行匹配;
当匹配成功时,执行所述确定在所述目标节点标识对应的目标节点上,所述目标服务类型对应的服务所需的接口标识的步骤。
6.根据权利要求1所述的方法,其特征在于,所述对所述请求头进行解析,得到节点标识包括:
从所述请求头中提取访问域名;
获取与所述入口页面对应的入口域名;
提取所述访问域名中所述入口域名之后的后缀域名;
调用预设的正则表达式对所述后缀域名进行正则匹配,得到节点标识。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当接收到所述终端通过所述入口页面上传的第一展示请求时,从所述第一展示请求中提取第一展示域名;
对所述第一展示域名进行解析,得到待展示节点标识和访问方法;
将基于所述访问方法生成的第二展示请求发送至所述待展示节点标识对应的目标节点;
将所述目标节点发送的所述待展示节点标识对应的所述可调用接口标识返回至所述终端,使得所述终端从所述入口页面跳转至所述待展示节点标识对应的节点服务页面,并在所述节点服务页面展示所述可调用接口标识。
8.根据权利要求1至7中任一项所述的方法,其特征在于,在所述将所述可调用接口标识发送至所述节点标识对应的目标节点之前,所述方法还包括:
记录所述节点标识的所述服务类型对应的历史接口标识;
当接收到所述终端发送的权限撤回请求时,将所述历史接口标识发送至所述权限撤回请求携带的节点标识所对应的目标节点,使得所述目标节点将所述可调用接口标识替换为所述历史接口标识并存储。
9.一种基于区块链的接口配置处理装置,其特征在于,所述装置包括:
请求接收模块,用于接收终端通过入口页面上传的接口配置请求,所述接口配置请求包括请求头以及请求体;
请求头解析模块,用于对所述请求头进行解析,得到节点标识;
信息提取模块,用于从所述请求体中提取所述节点标识对应的服务类型以及所述服务类型对应的接口配置信息,所述接口配置信息包括可调用接口标识;
接口配置模块,用于将所述可调用接口标识发送至所述节点标识对应的目标节点,使得所述目标节点基于所述可调用接口标识,对所述服务类型所对应的服务接口进行配置。
10.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910872779.9A CN110535971B (zh) | 2019-09-16 | 2019-09-16 | 基于区块链的接口配置处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910872779.9A CN110535971B (zh) | 2019-09-16 | 2019-09-16 | 基于区块链的接口配置处理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110535971A true CN110535971A (zh) | 2019-12-03 |
CN110535971B CN110535971B (zh) | 2021-10-26 |
Family
ID=68669005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910872779.9A Active CN110535971B (zh) | 2019-09-16 | 2019-09-16 | 基于区块链的接口配置处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110535971B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995756A (zh) * | 2019-12-20 | 2020-04-10 | 广州酷狗计算机科技有限公司 | 调用服务的方法和装置 |
CN111506577A (zh) * | 2020-04-13 | 2020-08-07 | 杭州溪塔科技有限公司 | 区块链上基于多种状态组织方式的数据操作方法和装置 |
CN111741118A (zh) * | 2020-06-28 | 2020-10-02 | 中国平安财产保险股份有限公司 | 接口调用方法、装置、计算机设备及计算机可读存储介质 |
CN111800426A (zh) * | 2020-07-07 | 2020-10-20 | 腾讯科技(深圳)有限公司 | 应用程序中原生代码接口的访问方法、装置、设备及介质 |
CN113364821A (zh) * | 2020-03-04 | 2021-09-07 | 腾讯科技(深圳)有限公司 | 一种功能服务访问方法、设备及存储介质 |
CN113452728A (zh) * | 2020-03-24 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 请求消息的处理方法及设备 |
CN113468273A (zh) * | 2021-07-15 | 2021-10-01 | 中国银行股份有限公司 | 接口信息的传输方法及系统 |
CN113489773A (zh) * | 2021-06-30 | 2021-10-08 | 未鲲(上海)科技服务有限公司 | 数据接入方法、装置、设备及介质 |
CN113656095A (zh) * | 2021-08-06 | 2021-11-16 | 北京数码大方科技股份有限公司 | 配置数据的处理方法及装置 |
CN113852655A (zh) * | 2020-06-28 | 2021-12-28 | 北京金山云网络技术有限公司 | 信息管理方法、装置及区块链服务系统 |
CN114078051A (zh) * | 2020-08-14 | 2022-02-22 | 北京金山云网络技术有限公司 | 区块链上的资产转换方法、装置和电子设备 |
CN115051987A (zh) * | 2022-06-06 | 2022-09-13 | 瞳见科技有限公司 | 一种用于多节点的移动端服务分发系统及方法 |
CN115604333A (zh) * | 2022-10-12 | 2023-01-13 | 江苏赛融科技股份有限公司(Cn) | 基于dubbo的分布式大数据分析服务调度方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106878363A (zh) * | 2016-06-01 | 2017-06-20 | 阿里巴巴集团控股有限公司 | 一种信息处理方法、装置及系统 |
CN107404509A (zh) * | 2016-05-20 | 2017-11-28 | 北京融聚世界网络科技有限公司 | 分布式服务配置系统及信息管理方法 |
CN108964982A (zh) * | 2018-06-13 | 2018-12-07 | 众安信息技术服务有限公司 | 用于实现区块链的多节点的部署的方法、装置及存储介质 |
US20190180329A1 (en) * | 2017-12-10 | 2019-06-13 | International Business Machines Corporation | Cognitive determination system connecting social network and blockchain network |
CN110046165A (zh) * | 2019-04-17 | 2019-07-23 | 江苏全链通信息科技有限公司 | 分布式应用程序的发布方法、设备及计算机可读存储介质 |
-
2019
- 2019-09-16 CN CN201910872779.9A patent/CN110535971B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107404509A (zh) * | 2016-05-20 | 2017-11-28 | 北京融聚世界网络科技有限公司 | 分布式服务配置系统及信息管理方法 |
CN106878363A (zh) * | 2016-06-01 | 2017-06-20 | 阿里巴巴集团控股有限公司 | 一种信息处理方法、装置及系统 |
US20190180329A1 (en) * | 2017-12-10 | 2019-06-13 | International Business Machines Corporation | Cognitive determination system connecting social network and blockchain network |
CN108964982A (zh) * | 2018-06-13 | 2018-12-07 | 众安信息技术服务有限公司 | 用于实现区块链的多节点的部署的方法、装置及存储介质 |
CN110046165A (zh) * | 2019-04-17 | 2019-07-23 | 江苏全链通信息科技有限公司 | 分布式应用程序的发布方法、设备及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
阿里云: "企业以太坊Quroum", 《HTTPS://HELP.ALIYUN.COM/DOCUMENT_DETAIL/101778.HTML?SPM=A2C4G.11186623.2.4.7A13129DJTOKUK》 * |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110995756A (zh) * | 2019-12-20 | 2020-04-10 | 广州酷狗计算机科技有限公司 | 调用服务的方法和装置 |
CN113364821A (zh) * | 2020-03-04 | 2021-09-07 | 腾讯科技(深圳)有限公司 | 一种功能服务访问方法、设备及存储介质 |
CN113364821B (zh) * | 2020-03-04 | 2024-03-05 | 腾讯科技(深圳)有限公司 | 一种功能服务访问方法、设备及存储介质 |
CN113452728A (zh) * | 2020-03-24 | 2021-09-28 | 阿里巴巴集团控股有限公司 | 请求消息的处理方法及设备 |
CN111506577A (zh) * | 2020-04-13 | 2020-08-07 | 杭州溪塔科技有限公司 | 区块链上基于多种状态组织方式的数据操作方法和装置 |
CN111506577B (zh) * | 2020-04-13 | 2023-08-22 | 杭州溪塔科技有限公司 | 区块链上基于多种状态组织方式的数据操作方法和装置 |
CN113852655A (zh) * | 2020-06-28 | 2021-12-28 | 北京金山云网络技术有限公司 | 信息管理方法、装置及区块链服务系统 |
CN111741118A (zh) * | 2020-06-28 | 2020-10-02 | 中国平安财产保险股份有限公司 | 接口调用方法、装置、计算机设备及计算机可读存储介质 |
CN111741118B (zh) * | 2020-06-28 | 2023-06-02 | 中国平安财产保险股份有限公司 | 接口调用方法、装置、计算机设备及计算机可读存储介质 |
CN111800426A (zh) * | 2020-07-07 | 2020-10-20 | 腾讯科技(深圳)有限公司 | 应用程序中原生代码接口的访问方法、装置、设备及介质 |
CN114078051A (zh) * | 2020-08-14 | 2022-02-22 | 北京金山云网络技术有限公司 | 区块链上的资产转换方法、装置和电子设备 |
CN113489773A (zh) * | 2021-06-30 | 2021-10-08 | 未鲲(上海)科技服务有限公司 | 数据接入方法、装置、设备及介质 |
CN113468273A (zh) * | 2021-07-15 | 2021-10-01 | 中国银行股份有限公司 | 接口信息的传输方法及系统 |
CN113656095A (zh) * | 2021-08-06 | 2021-11-16 | 北京数码大方科技股份有限公司 | 配置数据的处理方法及装置 |
CN113656095B (zh) * | 2021-08-06 | 2023-08-04 | 北京数码大方科技股份有限公司 | 配置数据的处理方法及装置 |
CN115051987A (zh) * | 2022-06-06 | 2022-09-13 | 瞳见科技有限公司 | 一种用于多节点的移动端服务分发系统及方法 |
CN115051987B (zh) * | 2022-06-06 | 2024-04-16 | 瞳见科技有限公司 | 一种用于多节点的移动端服务分发系统及方法 |
CN115604333A (zh) * | 2022-10-12 | 2023-01-13 | 江苏赛融科技股份有限公司(Cn) | 基于dubbo的分布式大数据分析服务调度方法及系统 |
CN115604333B (zh) * | 2022-10-12 | 2023-09-12 | 江苏赛融科技股份有限公司 | 基于dubbo的分布式大数据分析服务调度方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110535971B (zh) | 2021-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110535971A (zh) | 基于区块链的接口配置处理方法、装置、设备及存储介质 | |
CN108173850B (zh) | 一种基于区块链智能合约的身份认证系统和身份认证方法 | |
CN110430288B (zh) | 节点访问方法、装置、计算机设备和存储介质 | |
CN110602052B (zh) | 微服务处理方法及服务器 | |
CN110597541B (zh) | 基于区块链的接口更新处理方法、装置、设备及存储介质 | |
CN110213223B (zh) | 业务管理方法、装置、系统、计算机设备和存储介质 | |
CN112632629B (zh) | 基于区块链的投票管理方法、装置、介质及电子设备 | |
CN113691597A (zh) | 区块链合约部署方法、装置、设备以及存储介质 | |
CN110599142B (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN109361711A (zh) | 防火墙配置方法、装置、电子设备及计算机可读介质 | |
CN101316219A (zh) | 用于控制虚拟网络连接的虚拟网络连接装置、系统和方法 | |
CN110096551A (zh) | 基于区块链的信用数据存储方法、装置、设备及介质 | |
CN106341233A (zh) | 客户端登录服务器端的鉴权方法、装置、系统及电子设备 | |
CN109656778A (zh) | 数据获取方法、装置、计算机设备和存储介质 | |
CN111488372A (zh) | 一种数据处理方法、设备及存储介质 | |
CN104125230B (zh) | 一种短信认证服务系统以及认证方法 | |
CN112995357B (zh) | 基于云托管服务的域名管理方法、装置、介质及电子设备 | |
CN112087502A (zh) | 处理请求的方法、装置、设备及存储介质 | |
WO2020034700A1 (zh) | 云的开户、认证及访问方法和设备 | |
CN110866265A (zh) | 一种基于区块链的数据存储方法、设备及存储介质 | |
CN111339141A (zh) | 一种数据传输的方法、区块链节点设备以及介质 | |
CN110597817A (zh) | 基于区块链的通信记录存证方法、装置和计算机设备 | |
CN106713235A (zh) | 帐号注册与登入方法及使用所述方法的网络附加存储系统 | |
CN110611725B (zh) | 节点访问方法、装置、计算机设备和存储介质 | |
CN111817859A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |