CN116048517A - 基于b/s架构应用系统的api接口生成方法、系统和装置 - Google Patents

基于b/s架构应用系统的api接口生成方法、系统和装置 Download PDF

Info

Publication number
CN116048517A
CN116048517A CN202310333680.8A CN202310333680A CN116048517A CN 116048517 A CN116048517 A CN 116048517A CN 202310333680 A CN202310333680 A CN 202310333680A CN 116048517 A CN116048517 A CN 116048517A
Authority
CN
China
Prior art keywords
generating
function module
web page
command
class
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
Application number
CN202310333680.8A
Other languages
English (en)
Other versions
CN116048517B (zh
Inventor
吴林强
吴涛
刘飞燕
许峰
张文涛
詹智
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Zhongyun Data Technology Co ltd
Huzhou Big Data Operation Co ltd
Hangzhou City Big Data Operation Co ltd
Original Assignee
Hangzhou Zhongyun Data Technology Co ltd
Huzhou Big Data Operation Co ltd
Hangzhou City Big Data Operation Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Zhongyun Data Technology Co ltd, Huzhou Big Data Operation Co ltd, Hangzhou City Big Data Operation Co ltd filed Critical Hangzhou Zhongyun Data Technology Co ltd
Priority to CN202310333680.8A priority Critical patent/CN116048517B/zh
Publication of CN116048517A publication Critical patent/CN116048517A/zh
Application granted granted Critical
Publication of CN116048517B publication Critical patent/CN116048517B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请公开了一种基于B/S架构应用系统的API接口生成方法、系统和装置,通过生成操作对象对应的元素功能模块、操作动作对应的命令功能模块;将命令功能模块添加至目标区域以生成命令功能模块的流程节点,将元素功能模块添加至对应的命令功能模块的流程节点中;根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;生成业务流程对应的代码包,根据代码包生成应用程序接口。解决了相关技术中对原应用系统开发设计阶段的依赖性较强,对于不同的客户需求开发效率较低的技术问题,降低对原应用系统开发设计的依赖,极大提升系统对接的效率。

Description

基于B/S架构应用系统的API接口生成方法、系统和装置
技术领域
本申请属于计算机技术领域,具体而言,涉及一种基于B/S架构应用系统的API接口生成方法、系统和装置。
背景技术
不同应用系统之间,常常存在开发对接的需求。现有的实践中,通常有四种方案来满足数据传输的对接需求。
1、Socket方式:系统A提供接口,系统B按照接口要求进行调用。目前常用的http调用,Java/.net 远程调用,webservices等,都属于这种方式,区别在于传输协议与报文格式。
2、Ftp/文件共享方式:系统A和系统B约定文件服务器地址,文件命名规则,文件内容格式等,通过上传文件到文件服务器进行数据交互。
3、数据库共享数据方式:系统A和系统B通过连接同一个数据库服务器的同一张表进行数据交换。当系统A请求系统B处理数据的时候,系统A Insert一条数据,系统B select系统A插入的数据进行处理。
4、Message方式:系统A和系统B通过一个消息服务器进行数据交换。系统A发送消息到消息服务器,如果系统B订阅系统A发送过来的消息,消息服务器会消息推送给B。双方约定消息格式即可。
上述四种方案,存在一个共同缺陷:所有的数据传输,均依赖于原应用系统的开发设计。即,原应用系统在开发设计层面,需要明确其支持的数据传输内容及方式,系统对接时也只能按照预先的设定来获取数据。对原应用系统开发设计阶段的依赖性较强,对于不同的客户需求开发效率较低。
针对相关技术中现有的对原应用系统开发设计阶段的依赖性较强,对于不同的客户需求开发效率较低的技术问题,尚未提出有效的解决方案。
发明内容
因此,本申请实施例在于提供一种基于B/S架构应用系统的API接口生成方法、装置、电子设备及存储介质,旨在解决上述现有技术存在的至少一个问题。
为实现上述目的,第一方面,本申请提供了一种基于B/S架构应用系统的API接口生成方法,包括:
接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;
响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;
根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;
生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。
在一个实施例中,所述操作对象包括网页对象、网页元素对象和数据类对象,所述操作动作包括网页类命令、网页元素类命令、逻辑类命令和功能类命令,所述网页类命令用于针对所述网页对象进行操作,所述网页元素类命令用于针对所述网页元素对象进行操作,所述逻辑类命令用于对所述数据类对象进行处理时逻辑的处理,所述功能类命令用于对功能进行封装。
在一个实施例中,所述预设操作包括:鼠标的点击、拖拽,键盘的录入。
在一个实施例中,所述网页元素对象包括:网页元素对象所在网页URL,网页元素对象的Xpath表示,网页元素对象的基本信息。
在一个实施例中,所述生成所述操作对象对应的元素功能模块,包括:接收对所述网页对象、网页元素对象和数据类对象的抽象定义代码,根据所抽象定义代码生成所述网页对象、网页元素对象和数据类对象的对应的元素功能模块并在前端编辑界面进行展示;所述生成所述操作动作对应的命令功能模块,包括:接收对所述网页类命令、网页元素类命令、逻辑类命令和功能类命令的抽象定义代码,根据所抽象定义代码生成所述网页类命令、网页元素类命令、逻辑类命令和功能类命令的命令功能模块并在前端编辑界面进行展示。
在一个实施例中,所述生成所述业务流程对应的代码包,包括:将业务流程中的每个流程节点对应的命令功能模块和元素功能模块的实现代码进行拼接,生成所述业务流程对应的代码包;所述根据所述代码包生成应用程序接口,包括:随机生成预设长度字符串作为接口名,建立所述接口名和所述代码包之间的映射关系,将外部输入参数映射到所述接口名的参数列表并记录输出参数,根据所述参数列表生成所述接口名的应用程序接口。
第二方面,本申请还提供了一种基于B/S架构应用系统的API接口生成系统,包括:组件生成模块,用于接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;
可视化编辑模块,用于响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;
流程生成模块,用于根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;
接口生成模块,用于生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。
在一个实施例中,所述操作对象包括网页对象、网页元素对象和数据类对象,所述操作动作包括网页类命令、网页元素类命令、逻辑类命令和功能类命令,所述网页类命令用于针对所述网页对象进行操作,所述网页元素类命令用于针对所述网页元素对象进行操作,所述逻辑类命令用于对所述数据类对象进行处理时逻辑的处理,所述功能类命令用于对功能进行封装。
第三方面,本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述基于B/S架构应用系统的API接口生成方法的步骤。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述基于B/S架构应用系统的API接口生成方法的步骤。
本申请实施例提供的一种基于B/S架构应用系统的API接口生成方法、系统、电子设备和存储介质,通过接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。解决了相关技术中现有的对原应用系统开发设计阶段的依赖性较强,对于不同的客户需求开发效率较低的技术问题,降低对原应用系统开发设计的依赖,极大提升系统对接的效率。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的基于B/S架构应用系统的API接口生成方法的实现流程;
图2为本申请实施例提供的基于B/S架构应用系统的API接口生成方法的整体框架图;
图3为本申请实施例提供的基于B/S架构应用系统的API接口生成方法的一个实施例的业务流程拆分的示意图;
图4为本申请实施例提供的基于B/S架构应用系统的API接口生成方法的一个具体实施例的系统界面示意图;
图5为本申请实施例提供的基于B/S架构应用系统的API接口生成系统的主要模块示意图;
图6为本申请实施例提供的可以应用于其中的示例性系统架构图;
图7为适于用来实现本申请实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本申请及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。
并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本申请中的具体含义。
另外,术语“多个”的含义应为两个以及两个以上。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了本申请实施例提供的基于B/S架构应用系统的API接口生成方法的实现流程,图2示出了本申请实施例提供的基于B/S架构应用系统的API接口生成方法的整体框架图。为了便于说明,仅示出与本申请实施例相关的部分,详述如下:
一种基于B/S架构应用系统的API接口生成方法,包括以下步骤:
S101:接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;
S102:响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;
S103:根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;
S104:生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。
由此,本申请提出的一种基于B/S架构应用系统的API接口生成方法,无须对原应用系统进行开发改造,只需要对业务流程进行抽象编排,即可生成供外部调用的API接口,降低对原应用系统开发设计的依赖,极大提升系统对接的效率。
在步骤S101中:接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块。通过预先对B/S架构应用系统基于用户习惯操作语义进行抽象定义为多个操作对象和操作动作,以形成不同的元素功能模块和命令功能模块,便于直接利用元素功能模块和命令功能模块进行组装生成想要的具体业务流程的封装组件,进而形成对应的API(应用程序接口)供三方进行调用。
在一个实施例中,所述操作对象包括网页对象、网页元素对象和数据类对象,所述操作动作包括网页类命令、网页元素类命令、逻辑类命令和功能类命令,所述网页类命令用于针对所述网页对象进行操作,所述网页元素类命令用于针对所述网页元素对象进行操作,所述逻辑类命令用于对所述数据类对象进行处理时逻辑的处理,所述功能类命令用于对功能进行封装。
在一个实施例中,所述网页元素对象包括:网页元素对象所在网页URL,网页元素对象的Xp ath表示,网页元素对象的基本信息。
示例性的,B/S架构应用系统中,所有操作均由操作对象与操作动作组成。操作对象我们分为网页对象,网页元素对象,数据对象。
网页对象:网页对象是指HTML代码呈现的载体容器,即对某个浏览器对象,或浏览器对象内部的标签页。
网页元素对象:这里的网页元素对象,是在HTML代码内的各种标签元素。对网页元素对象操作,最重要的是能够精准定位该元素,目前常用关键值或特征值做定位,如ID、Name、Tag等。但在实际使用中,元素的上述值经常改变,且由于开发规范的差异,元素的上述特征值尝尝存在部分缺失,因此,在本实施例中使用Xpath方式,根据页面的结构特征,结合页面所在的Url,来做元素的精准定位。这里定义了元素的3元组:
Element:={<Url>,<Xpath>,<Info>}
其中:
Element:网页元素对象;
Url:网页元素对象所在网页Url;
Xpath:网页元素对象的Xpath表示;
Info:网页元素对象的基本信息,如元素名称,元素属性列表等。
数据类对象:这里指可录入到网页中的各类数据,如文本字符串,数字,图片等。
需要说明的是,B/S架构应用系统中,用户的各类操作,可以统一归纳到键盘或鼠标的操作,如鼠标的点击,文本的键盘录入。结合上述操作对象,本实施例中将操作动作抽象封装为一套操作命令的集合。
与前面操作对象的分类对应,我们同样将操作动作的原子命令集分为以下4类:网页类命令、网页元素类命令、逻辑类命令、功能类命令。其中:
网页类命令:主要针对网页对象进行操作,如网页的打开,关闭,跳转,返回等。
网页元素类命令:针对网页元素对象进行操作,如元素的点击,元素数据的获取及设置,元素属性信息的获取及设置等。
逻辑类命令:主要进行逻辑的处理,如条件判断,循环,中断条件等。
功能类命令:对部分通用功能进行封装,如图片验证码识别,OCR识别,AI人脸比对等。
例如,如图3所示,是一个个人参保信息查询业务的完整操作流程,根据本申请实施例,可以将每个步骤中涉及到的操作对象及操作动作,对应到我们的原子命令,如:
打开浙江政务网 =>打开网页(命令)+ 浙江政务网网址(网页对象);
输入个人账号 =>输入文本(命令)+ 账号文本编辑框(网页元素对象)+账号(数据对象);
点击“登录”按钮 =>点击元素(命令)+ 登录按钮(网页元素对象)
……。
在一个实施例中,所述生成所述操作对象对应的元素功能模块,包括:接收对所述网页对象、网页元素对象和数据类对象的抽象定义代码,根据所抽象定义代码生成所述网页对象、网页元素对象和数据类对象的对应的元素功能模块并在前端编辑界面进行展示;所述生成所述操作动作对应的命令功能模块,包括:接收对所述网页类命令、网页元素类命令、逻辑类命令和功能类命令的抽象定义代码,根据所抽象定义代码生成所述网页类命令、网页元素类命令、逻辑类命令和功能类命令的命令功能模块并在前端编辑界面进行展示。
由此,实现对B/S架构应用系统基于用户操作语义进行抽象定义,便于高效自动化的组件生成。
在步骤S102中:响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中。由此,可以直接通过抽象出的命令功能模块和元素功能模块进行组件封装对应的系统接口。
在一个实施例中,所述预设操作包括:鼠标的点击、拖拽,键盘的录入。
如图4所示,通过在命令功能去和元素功能区,选取对应的命令功能模块或者元素功能模块,通过点击、拖拽、键盘输入等方式加入至右边的画布区域中,形成对应的业务流程节点。由此,可以实现录入的业务的完整流程。
在步骤S103中:根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程。
在步骤S104中:生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。
进一步的,所述生成所述业务流程对应的代码包,包括:将业务流程中的每个流程节点对应的命令功能模块和元素功能模块的实现代码进行拼接,生成所述业务流程对应的代码包;所述根据所述代码包生成应用程序接口,包括:随机生成预设长度字符串作为接口名,建立所述接口名和所述代码包之间的映射关系,将外部输入参数映射到所述接口名的参数列表并记录输出参数,根据所述参数列表生成所述接口名的应用程序接口。
在这里,通过在前述步骤中对用户的业务操作已经做了抽象定义,用户可根据实际的业务需求,将业务流程拆分为以上操作对象与操作命令,并对其进行组装形成组件。组装过程中,每个命令均作为可视化流程图中的一个节点,包含输入输出(可缺省)参数。组装平台根据流程及命令各自的输入输出参数,对不同节点进行串联,自动关联匹配命令的内部实现代码,进行代码拼接,形成业务流程对应的完整实现代码。得到完整实现代码后,用户可在组装平台上模拟运行,以验证组件的可用性、稳定性。
需要说明的是,组装生成的组件,本实施例中采用通用性更强的Http接口方式,提供给第三方用户调用。提供可视化流程组装系统,组件的生成过程,是由用户自行完成,因此Http接口的生成,也需要在组件生成后,自动形成。
示例性的,组件的组装时,用户会将完整的操作过程,用前述的操作对象,操作命令进行模拟。在这个过程中,系统提取组件运行所需的全部输入、输出参数。根据流程的串联关系,自动筛选过滤掉组件内部参数,即上一节点命令的输出,仅作为后续命令的输入参数,不最终对外输出。
同时,在获取到组件运行的外部输入输出参数信息后,系统自动生成12位字符串作为接口名,与组件映射,再将外部输入参数映射到该接口的参数列表,记录输出参数供回调输出,以生成最终API接口。
在这里,外部调用API接口时,系统调用实例化引擎,运行组件实例,获取到组件实例的输入输出信息后,完成与第三方系统的数据交互。
由此,本申请实施例提供的一种基于B/S架构应用系统的API接口生成方法,通过接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。解决了相关技术中现有的对原应用系统开发设计阶段的依赖性较强,对于不同的客户需求开发效率较低的技术问题,降低对原应用系统开发设计的依赖,极大提升系统对接的效率。
图5示出了本申请实施例提供的基于B/S架构应用系统的API接口生成系统的主要模块示意图,为了便于说明,仅示出与本申请实施例相关的部分,详述如下:
一种基于B/S架构应用系统的API接口生成系统200,包括:
组件生成模块201,用于接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;
可视化编辑模块202,用于响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;
流程生成模块203,用于根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;
接口生成模块204,用于生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。
在一个实施例中,所述操作对象包括网页对象、网页元素对象和数据类对象,所述操作动作包括网页类命令、网页元素类命令、逻辑类命令和功能类命令,所述网页类命令用于针对所述网页对象进行操作,所述网页元素类命令用于针对所述网页元素对象进行操作,所述逻辑类命令用于对所述数据类对象进行处理时逻辑的处理,所述功能类命令用于对功能进行封装。
需要说明的是,本申请实施例的基于B/S架构应用系统的API接口生成系统为对应于本申请实施例的基于B/S架构应用系统的API接口生成方法进行配置,基于B/S架构应用系统的API接口生成系统的其它实施例对应于基于B/S架构应用系统的API接口生成方法的所有实施例,这里不再赘述。
由此,本申请实施例提供的基于B/S架构应用系统的API接口生成系统,通过接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。解决了相关技术中现有的对原应用系统开发设计阶段的依赖性较强,对于不同的客户需求开发效率较低的技术问题,降低对原应用系统开发设计的依赖,极大提升系统对接的效率。
本申请实施例还提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本申请实施例的基于B/S架构应用系统的API接口生成方法。
本申请实施例还提供一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现本申请实施例的基于B/S架构应用系统的API接口生成方法。
图6示出了可以应用本申请实施例的基于B/S架构应用系统的API接口生成方法或装置的示例性系统架构300。
如图6所示,系统架构300可以包括终端设备301、302、303,网络304和服务器305。网络304用以在终端设备301、302、303和服务器305之间提供通信链路的介质。网络304可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备301、302、303通过网络304与服务器305交互,以接收或发送消息等。终端设备301、302、303上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备301、302、303可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器305可以是提供各种服务的服务器,例如对用户利用终端设备301、302、303所发送的往来消息提供支持的后台管理服务器。后台管理服务器可以在接收到终端设备请求后进行分析等处理,并将处理结果反馈给终端设备。
需要说明的是,本申请实施例所提供的基于B/S架构应用系统的API接口生成方法一般由终端设备301、302、303或服务器305执行,相应地,基于B/S架构应用系统的API接口生成系统一般设置于终端设备301、302、303或服务器305中。
应该理解,图6中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图7,其示出了适于用来实现本申请实施例的终端设备或服务器的计算机系统400的结构示意图。图7示出的计算机系统仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机系统400包括中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的程序或者从存储部分408加载到随机访问存储器(RAM)403中的程序而执行各种适当的动作和处理。在RAM 403中,还存储有系统400操作所需的各种程序和数据。CPU 401、ROM 402以及RAM 403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
以下部件连接至I/O接口405:包括键盘、鼠标等的输入部分406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分407;包括硬盘等的存储部分408;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分409。通信部分409经由诸如因特网的网络执行通信处理。驱动器410也根据需要连接至I/O接口405。可拆卸介质411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器410上,以便于从其上读出的计算机程序根据需要被安装入存储部分408。
特别地,根据本申请公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分409从网络上被下载和安装,和/或从可拆卸介质411被安装。在该计算机程序被中央处理单元(CPU)401执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括确定模块、提取模块、训练模块和筛选模块 。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,确定模块还可以被描述为“确定候选用户集的模块”。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种基于B/S架构应用系统的API接口生成方法,其特征在于,包括:接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;
响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;
根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;
生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。
2.根据权利要求1所述的基于B/S架构应用系统的API接口生成方法,其特征在于,所述操作对象包括网页对象、网页元素对象和数据类对象,所述操作动作包括网页类命令、网页元素类命令、逻辑类命令和功能类命令,所述网页类命令用于针对所述网页对象进行操作,所述网页元素类命令用于针对所述网页元素对象进行操作,所述逻辑类命令用于对所述数据类对象进行处理时逻辑的处理,所述功能类命令用于对功能进行封装。
3.根据权利要求2所述的基于B/S架构应用系统的API接口生成方法,其特征在于,所述预设操作包括:鼠标的点击、拖拽,键盘的录入。
4.根据权利要求2所述的基于B/S架构应用系统的API接口生成方法,其特征在于,所述网页元素对象包括:网页元素对象所在网页URL,网页元素对象的Xpath表示,网页元素对象的基本信息。
5.根据权利要求2所述的基于B/S架构应用系统的API接口生成方法,其特征在于,所述生成所述操作对象对应的元素功能模块,包括:接收对所述网页对象、网页元素对象和数据类对象的抽象定义代码,根据所抽象定义代码生成所述网页对象、网页元素对象和数据类对象的对应的元素功能模块并在前端编辑界面进行展示;所述生成所述操作动作对应的命令功能模块,包括:接收对所述网页类命令、网页元素类命令、逻辑类命令和功能类命令的抽象定义代码,根据所抽象定义代码生成所述网页类命令、网页元素类命令、逻辑类命令和功能类命令的命令功能模块并在前端编辑界面进行展示。
6.根据权利要求1所述的基于B/S架构应用系统的API接口生成方法,其特征在于,所述生成所述业务流程对应的代码包,包括:将业务流程中的每个流程节点对应的命令功能模块和元素功能模块的实现代码进行拼接,生成所述业务流程对应的代码包;所述根据所述代码包生成应用程序接口,包括:随机生成预设长度字符串作为接口名,建立所述接口名和所述代码包之间的映射关系,将外部输入参数映射到所述接口名的参数列表并记录输出参数,根据所述参数列表生成所述接口名的应用程序接口。
7.一种基于B/S架构应用系统的API接口生成系统,其特征在于,包括:组件生成模块,用于接收对B/S架构应用系统基于用户操作语义进行抽象定义的操作对象和操作动作,生成所述操作对象对应的元素功能模块,生成所述操作动作对应的命令功能模块;
可视化编辑模块,用于响应于对所述命令功能模块的预设操作将所述命令功能模块添加至目标区域以生成所述命令功能模块的流程节点,响应于对所述元素功能模块预设操作将所述元素功能模块添加至对应的命令功能模块的流程节点中;
流程生成模块,用于根据目标区域中每个流程节点中的命令功能模块和元素功能模块的输入参数和输出参数将每个流程节点进行串联得到业务流程;
接口生成模块,用于生成所述业务流程对应的代码包,根据所述代码包生成应用程序接口。
8.根据权利要求7所述的基于B/S架构应用系统的API接口生成系统,其特征在于,所述操作对象包括网页对象、网页元素对象和数据类对象,所述操作动作包括网页类命令、网页元素类命令、逻辑类命令和功能类命令,所述网页类命令用于针对所述网页对象进行操作,所述网页元素类命令用于针对所述网页元素对象进行操作,所述逻辑类命令用于对所述数据类对象进行处理时逻辑的处理,所述功能类命令用于对功能进行封装。
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行权利要求1至6中任一项所述的基于B/S架构应用系统的API接口生成方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至6中任一项所述的基于B/S架构应用系统的API接口生成方法的步骤。
CN202310333680.8A 2023-03-31 2023-03-31 基于b/s架构应用系统的api接口生成方法、系统和装置 Active CN116048517B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310333680.8A CN116048517B (zh) 2023-03-31 2023-03-31 基于b/s架构应用系统的api接口生成方法、系统和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310333680.8A CN116048517B (zh) 2023-03-31 2023-03-31 基于b/s架构应用系统的api接口生成方法、系统和装置

Publications (2)

Publication Number Publication Date
CN116048517A true CN116048517A (zh) 2023-05-02
CN116048517B CN116048517B (zh) 2023-08-01

Family

ID=86125898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310333680.8A Active CN116048517B (zh) 2023-03-31 2023-03-31 基于b/s架构应用系统的api接口生成方法、系统和装置

Country Status (1)

Country Link
CN (1) CN116048517B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116578281A (zh) * 2023-07-13 2023-08-11 江西汉辰信息技术股份有限公司 基于代码包的网页开发方法、系统、电子设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339500A (zh) * 2008-05-22 2009-01-07 清华大学 基于xml模式的数据绑定应用程序接口生成方法
KR20170024778A (ko) * 2015-08-26 2017-03-08 주식회사 케이티 사물 인터넷 시스템에서의 데이터 공유 장치 및 데이터 공유 방법
CN106528175A (zh) * 2016-11-29 2017-03-22 福州大学 面向bs架构的数据接口生成方法
CN110286897A (zh) * 2019-05-22 2019-09-27 深圳壹账通智能科技有限公司 Api可视化动态配置方法、装置、设备以及存储介质
EP3709232A1 (en) * 2019-03-14 2020-09-16 Sunpower Corporation Estimating performance of photovoltaic systems
CN113590097A (zh) * 2021-07-30 2021-11-02 中电金信软件有限公司 一种api接口的生成方法、装置、电子设备及存储介质
CN114115841A (zh) * 2021-04-02 2022-03-01 北京沃东天骏信息技术有限公司 数据流接口动态编排方法、装置、设备、介质及程序产品
CN115455329A (zh) * 2022-08-29 2022-12-09 北财在线科技(北京)有限公司 一种b/s架构跨平台跨多端rpa设计器系统及实现方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339500A (zh) * 2008-05-22 2009-01-07 清华大学 基于xml模式的数据绑定应用程序接口生成方法
KR20170024778A (ko) * 2015-08-26 2017-03-08 주식회사 케이티 사물 인터넷 시스템에서의 데이터 공유 장치 및 데이터 공유 방법
CN106528175A (zh) * 2016-11-29 2017-03-22 福州大学 面向bs架构的数据接口生成方法
EP3709232A1 (en) * 2019-03-14 2020-09-16 Sunpower Corporation Estimating performance of photovoltaic systems
CN110286897A (zh) * 2019-05-22 2019-09-27 深圳壹账通智能科技有限公司 Api可视化动态配置方法、装置、设备以及存储介质
CN114115841A (zh) * 2021-04-02 2022-03-01 北京沃东天骏信息技术有限公司 数据流接口动态编排方法、装置、设备、介质及程序产品
CN113590097A (zh) * 2021-07-30 2021-11-02 中电金信软件有限公司 一种api接口的生成方法、装置、电子设备及存储介质
CN115455329A (zh) * 2022-08-29 2022-12-09 北财在线科技(北京)有限公司 一种b/s架构跨平台跨多端rpa设计器系统及实现方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANTRAGAMA EWA ABBAS.ETC: "API Integration of National Complaint Handling System in Indonesia: A State of The Art Review", 《IEEE》 *
夏冬生: "B/S模式下ASP编程的数据传输及接口", 《计算机工程与应用》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116578281A (zh) * 2023-07-13 2023-08-11 江西汉辰信息技术股份有限公司 基于代码包的网页开发方法、系统、电子设备及存储介质
CN116578281B (zh) * 2023-07-13 2023-11-24 江西金发金融信息服务有限公司 基于代码包的网页开发方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN116048517B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
US7490167B2 (en) System and method for platform and language-independent development and delivery of page-based content
US9467344B2 (en) Mechanism to display graphical IT infrastructure using configurable smart navigation
US7954052B2 (en) Method for processing a web page for display in a wiki environment
US7865528B2 (en) Software, devices and methods facilitating execution of server-side applications at mobile devices
US20080010341A1 (en) Processing model of an application wiki
US20080010387A1 (en) Method for defining a Wiki page layout using a Wiki page
US20080040661A1 (en) Method for inheriting a Wiki page layout for a Wiki page
US20080010590A1 (en) Method for programmatically hiding and displaying Wiki page layout sections
JP2003518683A (ja) ユーザにデータを提示する方法および装置
CN110119294A (zh) 菜单页面的生成方法、装置及系统
US10057320B2 (en) Offline browsing session management
CA3061623C (en) File sending in instant messaging applications
US20110320286A1 (en) System And Method For Integrating An Ad Banner With A Calling Application
CN109981322A (zh) 基于标签的云资源管理的方法和装置
CN116048517B (zh) 基于b/s架构应用系统的api接口生成方法、系统和装置
CN111538774A (zh) 数据存储及展示方法、系统、设备及存储介质
US20080010386A1 (en) Method and apparatus for client wiring model
CN113626223A (zh) 一种接口调用方法和装置
CN113238740A (zh) 代码生成方法、代码生成装置、存储介质及电子设备
US8683425B2 (en) System for generating application architecture design work products
CN113971037A (zh) 应用处理方法、装置、电子设备及存储介质
CN108959294B (zh) 一种访问搜索引擎的方法和装置
CN110109983B (zh) 一种操作Redis数据库的方法和装置
CN113821565A (zh) 一种多数据源同步数据的方法
US20080010388A1 (en) Method and apparatus for server wiring model

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