CN118034680A - 一种接口开发方法及相关设备 - Google Patents
一种接口开发方法及相关设备 Download PDFInfo
- Publication number
- CN118034680A CN118034680A CN202211392876.6A CN202211392876A CN118034680A CN 118034680 A CN118034680 A CN 118034680A CN 202211392876 A CN202211392876 A CN 202211392876A CN 118034680 A CN118034680 A CN 118034680A
- Authority
- CN
- China
- Prior art keywords
- page
- service
- web
- user
- apis
- 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
- 238000011161 development Methods 0.000 title claims abstract description 219
- 238000000034 method Methods 0.000 title claims abstract description 81
- 239000008186 active pharmaceutical agent Substances 0.000 claims description 142
- 230000015654 memory Effects 0.000 claims description 24
- 230000001960 triggered effect Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 238000013461 design Methods 0.000 abstract description 23
- 238000004891 communication Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 230000003068 static effect Effects 0.000 description 13
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000012800 visualization Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 230000008602 contraction Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 239000002184 metal Substances 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
- 230000008520 organization Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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
- 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
- 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/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供了一种接口开发方法,包括:接收用户通过开发界面配置的网络应用的页面元数据,页面元数据包括页面承载的组件,根据页面承载的组件对应的业务信息,搜索后台服务模型库,获得页面对应的至少一组业务模型;根据至少一组业务模型,生成页面对应的web API。该方法基于页面元数据如页面承载的组件捕捉到开发人员正在处理的业务场景,获得相应的业务信息,基于该业务信息搜索后台服务模型库获得相应的业务模型,基于该业务模型可以自动化地完成web API设计及组装的工作,从而提升开发效率。
Description
技术领域
本申请涉及应用开发技术领域,尤其涉及一种接口开发方法、系统、计算设备集群、计算机可读存储介质、计算机程序产品。
背景技术
网络应用程序(web application,web app),简称为web应用,是指使用网络浏览器在网络(互联网或内网)进行操作的应用。web应用通常无需在终端额外安装客户端,因而在许多场景中得到广泛应用。例如,web应用可以用于餐饮行业,为用户提供点餐服务。又例如,web应用可以用于物流行业,为用户提供物流查询服务。
web应用通常可以由包括前端开发人员、后台开发人员、测试人员在内的开发团队协同开发。其中,前端开发人员负责客户端设计,后台开发人员负责后台逻辑服务,测试人员负责应用特性测试。客户端设计的一个重要环节是网络应用程序编程接口(webapplication programming interface,web API)设计。
Web API通常依赖前端和后台开发人员手工设计,效率较低,难以满足业务需求,尤其是难以满足频繁迭代的业务的需求。
发明内容
本申请提供了一种接口开发方法,该方法基于页面元数据如页面承载的组件捕捉到开发人员正在处理的业务场景,获得相应的业务信息,基于该业务信息搜索后台服务模型库获得相应的业务模型,基于该业务模型可以自动化地完成web API设计及组装的工作,从而提升开发效率。
第一方面,本申请提供一种接口开发方法。该方法可以由应用开发系统执行。其中,应用开发系统可以是用于开发应用的软件系统或硬件系统。当应用开发系统为软件系统时,该软件系统可以是集成开发环境(integrated development environment,IDE)或者是独立的开发软件。其中,IDE可以包括低代码开发工具。软件系统可以部署在计算设备集群,计算设备集群执行软件系统的程序代码,从而执行本申请的接口开发方法。当应用开发系统为硬件系统时,硬件系统可以是具有接口开发功能的计算设备集群,硬件系统运行时,执行本申请的接口开发方法。
具体地,应用开发系统接收用户通过开发界面配置的网络应用的页面元数据,该页面元数据包括网络应用的页面承载的组件,然后根据页面承载的组件对应的业务信息,搜索后台服务模型库,获得页面对应的至少一组业务模型,接着根据至少一组业务模型,生成页面对应的网络应用程序编程接口web API。
该方法可以基于页面元数据如页面承载的组件捕捉到开发人员正在处理的业务场景,获得相应的业务信息,基于该业务信息搜索后台服务模型库获得相应的业务模型,基于该业务模型可以自动化地完成web API设计及组装的工作,从而提升开发效率。进一步地,web API基于后台服务模型库中业务模型的服务API组装生成,因此,web API对应的web视图模型中业务实体的定义与后台的业务模型中业务实体的定义一致,降低了沟通成本,提高了开发效率。
在一些可能的实现方式中,应用开发系统还可以向所述用户呈现所述至少一组业务模型,确定所述用户从所述至少一组业务模型中选中的一组业务模型。相应地,应用开发系统在生成web API时,可以根据用户选中的一组业务模型,生成页面对应的网络应用程序编程接口web API。
该方法通过智能搜索向用户推荐至少一组业务模型,用户通过简单的交互操作,即可选择一组业务模型用于生成web API,由此提升了开发效率,降低了开发门槛。
在一些可能的实现方式中,每个业务模型可以提供至少一个服务API,应用开发系统可以以服务API为粒度,对服务API进行组装等方式生成web API。具体地,应用开发系统可以从至少一组业务模型的服务API中,确定至少一组目标API,然后根据至少一组目标API,生成页面对应的web API。
该方法中,用于生成web API的服务API来自于业务模型,如此保障了前端与后台对业务实体的定义的一致性,降低了沟通成本,提高了开发效率。
在一些可能的实现方式中,应用开发系统还可以向用户呈现所述至少一组目标API,然后确定用户从至少一组目标API中选中的一组目标API。相应地,应用开发系统在生成web API时,可以根据所述用户选中的一组目标API,生成所述页面对应的web API。
该方法通过智能搜索向用户推荐指数一组目标API,用户通过简单的交互操作,即可选择一组目标API用于生成web API,由此提升了开发效率,降低了开发门槛。
在一些可能的实现方式中,页面对应的web API包括查询API。应用开发系统在确定目标API时,可以根据页面承载的组件的数据加载要求,从至少一组业务模型的服务API中确定符合所述数据加载要求的至少一组目标API。
该方法通过结合用户在开发界面设计静态页面时编辑的数据加载要求,精准搜索符合数据加载要求的至少一组目标API,进而生成满足业务需求的web API,减少返工次数,提高开发效率。
在一些可能的实现方式中,页面对应的web API包括操作API。其中,操作API是在页面执行变更操作的API,如点餐页面执行提交订单操作的API,订单页面执行支付操作的API。相应地,应用开发系统可以根据所述页面承载的组件的操作要求,从所述至少一组业务模型的服务API中确定符合所述操作要求的至少一组目标API。
该方法通过结合用户在开发界面设计静态页面时编辑的操作要求,精准搜索符合操作要求的至少一组目标API,进而生成满足业务需求的web API,减少返工次数,提高开发效率。
在一些可能的实现方式中,应用开发系统在根据至少一组目标API,生成页面对应的web API时,可以将至少一组目标API通过业务模型的模型字段关联,获得页面对应的webAPI。
该方法无需用户手动绑定不同的服务API,一方面可以提高开发效率,另一方面可以避免人工绑定失误导致web API不能满足业务需求。
在一些可能的实现方式中,应用开发系统可以向用户呈现开发界面,该开发界面包括多个组件模板,然后应用开发系统可以确定用户从多个组件模板中选择的目标组件模板,接收用户对所述目标组件模板的配置信息,获得网络应用的至少一个页面承载的组件。
该方法通过为用户提供可视化的组件,以完成积木式的页面设计开发工作,简化开发过程,提高开发效率。
在一些可能的实现方式中,应用开发系统可以响应于所述用户触发的接口生成操作,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
该方法通过捕捉用户触发的接口生成操作,自动捉业务场景获得业务信息,并根据业务信息搜索后台服务模型库,获得业务模型,为生成web API奠定基础。
在一些可能的实现方式中,用户在所述开发界面的最近一次配置操作的操作时间满足预设条件,例如,最近一次配置操作的操作时间距离当前时间达到预设时长,则视为完成静态的页面设计,应用开发系统可以根据至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
该方法通过捕捉最近一次配置操作的操作时间,识别用户是否完成静态的页面设计,进而决定是否触发接口生成,为自动化生成web API奠定基础。
在一些可能的实现方式中,开发界面承载有模型推荐控件,应用开发系统可以响应于用户对所述模型推荐控件的触发操作,向所述用户呈现所述至少一组业务模型,从而实现向用户智能推荐业务模型,以辅助生成web API。一方面,该方法通过推荐业务模型,无需用户手动设计,提高了开发效率,另一方面该方法通过在开发界面设置模型推荐控件,指引用户触发模型推荐,提升了用户体验。
在一些可能的实现方式中,开发界面承载有服务API推荐控件,应用开发系统可以响应于用户对所述服务API推荐控件的触发操作,向所述用户呈现所述至少一组目标API,从而实现向用户智能推荐目标API,以辅助生成web API。一方面,该方法通过推荐目标API,无需用户手动设计,提高了开发效率,另一方面该方法通过在开发界面设置服务API推荐控件,指引用户触发API推荐,提升了用户体验。
第二方面,本申请提供一种应用开发系统。所述系统包括:
web编辑器,用于接收用户通过开发界面配置的网络应用的页面元数据,所述页面元数据包括所述网络应用的页面承载的组件;
模型搜索装置,用于根据所述页面承载的组件对应的业务信息,搜索后台服务模型库,获得所述页面对应的至少一组业务模型;
所述web编辑器,还用于根据所述至少一组业务模型,生成所述页面对应的网络应用程序编程接口web API。
在一些可能的实现方式中,所述web编辑器还用于:
向所述用户呈现所述至少一组业务模型;
确定所述用户从所述至少一组业务模型中选中的一组业务模型;
所述web编辑器具体用于:
根据所述用户选中的一组业务模型,生成所述页面对应的网络应用程序编程接口web API。
在一些可能的实现方式中,所述web编辑器具体用于:
从所述至少一组业务模型的服务API中,确定至少一组目标API;
根据所述至少一组目标API,生成所述页面对应的web API。
在一些可能的实现方式中,所述web编辑器还用于:
向所述用户呈现所述至少一组目标API;
确定所述用户从所述至少一组目标API中选中的一组目标API;
所述web编辑器具体用于:
根据所述用户选中的一组目标API,生成所述页面对应的web API。
在一些可能的实现方式中,所述页面对应的web API包括查询API;
所述web编辑器具体用于:
根据所述页面承载的组件的数据加载要求,从所述至少一组业务模型的服务API中确定符合所述数据加载要求的至少一组目标API。
在一些可能的实现方式中,所述页面对应的web API包括操作API;
所述web编辑器具体用于:
根据所述页面承载的组件的操作要求,从所述至少一组业务模型的服务API中确定符合所述操作要求的至少一组目标API。
在一些可能的实现方式中,所述web编辑器具体用于:
将所述至少一组目标API通过业务模型的模型字段关联,获得所述页面对应的webAPI。
在一些可能的实现方式中,所述web编辑器具体用于:
向用户呈现开发界面,所述开发界面包括多个组件模板;
确定所述用户从所述多个组件模板中选择的目标组件模板,接收所述用户对所述目标组件模板的配置信息,获得所述网络应用的至少一个页面承载的组件。
在一些可能的实现方式中,所述模型搜索装置具体用于:
响应于所述用户触发的接口生成操作,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
在一些可能的实现方式中,所述模型搜索装置具体用于:
所述用户在所述开发界面的最近一次配置操作的操作时间满足预设条件,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
第三方面,本申请提供一种计算设备集群。所述计算设备集群包括至少一台计算设备,所述至少一台计算设备包括至少一个处理器和至少一个存储器。所述至少一个处理器、所述至少一个存储器进行相互的通信。所述至少一个处理器用于执行所述至少一个存储器中存储的指令,以使得计算设备或计算设备集群执行如第一方面或第一方面的任一种实现方式所述的接口开发方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,所述指令指示计算设备或计算设备集群执行上述第一方面或第一方面的任一种实现方式所述的接口开发方法。
第五方面,本申请提供了一种包含指令的计算机程序产品,当其在计算设备或计算设备集群上运行时,使得计算设备或计算设备集群执行上述第一方面或第一方面的任一种实现方式所述的接口开发方法。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
为了更清楚地说明本申请实施例的技术方法,下面将对实施例中所需使用的附图作以简单地介绍。
图1为本申请实施例提供的一种点餐页面的示意图;
图2为本申请实施例提供的一种订单页面的示意图;
图3为本申请实施例提供的一种应用开发系统的架构示意图;
图4为本申请实施例提供的一种接口开发方法的流程图;
图5为本申请实施例提供的一种开发界面的界面示意图;
图6为本申请实施例提供的一种计算设备的结构示意图;
图7为本申请实施例提供的一种计算设备集群的结构示意图;
图8为本申请实施例提供的另一种计算设备集群的结构示意图;
图9为本申请实施例提供的又一种计算设备集群的结构示意图。
具体实施方式
本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
首先对本申请实施例中所涉及到的一些技术术语进行介绍。
web应用,是指使用网络浏览器在网络(互联网或内网)进行操作的应用。常见的web应用可以包括但不限于网络邮件(webmail)、网络购物、网络论坛、网络游戏或博客。
web应用可以采用客户端到服务器(client/server,C/S)架构或无服务器(serverless)架构开发得到。其中,客户端是指与服务器相对应并为客户提供本地服务的程序。例如,客户端可以为网页浏览器。服务器用于响应客户端的请求,从而提供服务。serverless是一种云原生开发模型,可使开发人员专注构建和运行应用,而无需管理服务器。需要说明的是,无服务器方案中仍然有服务器,但服务器已从应用开发中抽离,由云服务提供商负责置备、维护和扩展服务器基础架构等例行工作。开发人员可以简单地将代码打包到容器中进行部署。部署之后,无服务器应用即可响应需求,并根据需要自动进行伸缩管理(例如扩容或缩容)。
在开发web应用时,可以通过应用程序平台即服务(application Platform as aService,aPaaS)提高开发效率。aPaaS是基于平台即服务(Platform as a Service,PaaS)的一种解决方案,支持应用在云端的开发、部署和运行,提供软件开发中的基础工具给用户,包括数据对象、权限管理、用户界面等。
aPaaS可以提供低代码工具(甚至是零代码工具)给用户,一方面提供了快速开发的环境,用户在几个小时内就能完成应用(例如是web应用)的开发、测试、部署,并能够随时调整或更新,另一方面,降低了开发门槛,非技术人员也能完成应用开发。
通过低代码工具开发典型的web应用的过程中,前端开发人员可以使用丰富的页面组件,积木式搭建web应用静态页面,然后前端开发人员和后台开发人员可以根据上述web应用静态页面手工设计web API,提供页面组件涉及的数据查询及业务动作接口,webAPI是前端开发人员和后台开发人员的接口契约,前端开发人员和后台开发人员可以分别完成相关开发工作。
为了便于理解,以“餐厅点餐”应用对开发过程进行示例说明。
在第一阶段,前端开发人员根据点餐业务需求,在低代码工具上用页面组件积木式拼装出静态的如图1所示的点餐页面和如图2所示的订单页面。在该示例中,点餐页面可以包括如下组件:应用容器、餐厅名称框、餐厅地址框、餐厅菜单表、桌位选择列表、总价框、下单按钮、我的订单按钮,订单页面可以包括如下组件:应用容器、餐厅名称框、餐厅地址框、关闭页面按钮、订单条目表、订单总价框、桌位框、订单进度框、支付按钮。具体明细如表1所示:
表1页面组件列表
其中,图1或图2的演示应用覆盖用户视角涉及的流程,具体包括如下步骤:用户通过手机打开应用,访问点餐页面,查看餐厅信息和菜单,选择菜及份数、桌位,然后提交订单,查看订单页面的结果,用户在等待及就餐过程中可以查看订单进度,也可以发起支付。
在第二阶段,前端开发人员和后台开发人员根据上述静态的点餐页面和订单页面联合设计web API。web API的接口参数按组件交互(获取待渲染数据或执行业务操作)来制定,具体如下所示:
表2 web API的接口参数以及处理逻辑
每个web API涉及的web视图模型包括至少一个视图子模型,每个视图子模型包括至少一个模型字段,具体如下所示:
表3 web视图模型的组成
在第三阶段,前端开发人员和后台开发人员基于web API并行完成前端和后台的开发工作。
前端作为web API的消费方,前端开发人员需要将页面组件与web API绑定。WebAPI调用及输入输出的操作需要前端开发人员手工配置,关联绑定到对应的页面组件上,如下所示:
表4 web API与页面组件的绑定关系
后台作为web API的提供方,需要后台开发人员基于业务逻辑设计实现后台服务的API(也可以称作服务API)。后台服务可以按领域划分,并支持灵活地开发维护,可以被高效组合复用。后台服务以及服务API具体如下所示:
表5后台服务明细
上述后台服务的API涉及的服务模型即业务模型具体如下所示:
表6后台服务的API涉及的业务模型
/>
Web API可以由后台服务的API组装而成,其包括的web视图模型映射覆盖页面操作场景,后台服务的API不会直接给前端调用,因为前端的页面逻辑往往会涉及多个后台服务的配合,在前端直接组合调用领域服务不仅实现复杂,而且会增加前端与后台间的调用次数,降低性能。Web API的实现过程是手工完成的,需要开发人员手工组装,具体如下所示:
表7用于组装web API的服务API明细
上述方法虽然支持开发人员使用丰富的、可视化的组件,积木式地搭建web应用的静态页面,提高了创建页面的效率,但是与页面组件配合的web API是传统的从零开始手工设计,既要逐个考虑到页面信息,也要考虑到实际业务逻辑建模,效率比较低。并且,webAPI依赖后台服务的API,而后台服务的API的模型也依赖开发人员手工设计,开发后台服务的API的开发人员可能与开发web API的开发人员不同,如果沟通不当就会出现相同的业务实体定义不一致的问题,造成额外的返工,进一步降低了web API的开发效率。例如,在:“餐厅点餐”应用开发过程中,开发人员在完成第一阶段的静态页面设计后,虽然已经在页面上通过组件描述了业务需求,但还是需要在后续的开发过程中(如第二阶段、第三阶段)重复描述需求,相同的业务实体(如餐厅)在web视图模型和业务模型均有定义,但是需要开发人员去手动重复编辑,效率比较低,而且按前端和后台分给不同的角色去定义时也可能造成细节不一致。
有鉴于此,本申请提供一种接口开发方法。该方法可以由应用开发系统执行。其中,应用开发系统可以是用于开发应用的软件系统或硬件系统。当应用开发系统为软件系统时,该软件系统可以是集成开发环境(integrated development environment,IDE)或者是独立的开发软件。其中,IDE可以包括上述aPaaS。软件系统可以部署在计算设备集群,计算设备集群执行软件系统的程序代码,从而执行本申请的接口开发方法。当应用开发系统为硬件系统时,硬件系统可以是具有接口开发功能的计算设备集群,硬件系统运行时,执行本申请的接口开发方法。
具体地,应用开发系统接收用户通过开发界面配置的web应用的页面元数据,该页面元数据包括web应用的页面承载的组件,然后根据页面承载的组件对应的业务信息,搜索后台服务模型库,获得页面对应的至少一组业务模型,接着根据至少一组业务模型,生成页面对应的web API。
该方法可以基于页面元数据如页面承载的组件捕捉到开发人员正在处理的业务场景,获得相应的业务信息,基于该业务信息搜索后台服务模型库获得相应的业务模型,基于该业务模型可以自动化地完成web API设计及组装的工作,从而提升开发效率。进一步地,web API基于后台服务模型库中业务模型的服务API组装生成,因此,web API对应的web视图模型中业务实体的定义与后台的业务模型中业务实体的定义一致,降低了沟通成本,提高了开发效率。而且,该方法能够实现后台的业务模型与web视图模型的自动映射,无需人工绑定,进一步提高了开发效率。
为了使得本申请的技术方案更加清楚、易于理解,下面结合附图对本申请实施例的应用开发系统的架构进行介绍。
参见图3所示的应用开发系统的架构图,应用开发系统30可以包括web编辑器32模型搜索装置34。其中,web编辑器32可以是低代码web编辑器,例如是aPaaS中的低代码编辑器,用户(如前端开发人员)可以通过该web编辑器32进行前端开发。进一步地,应用开发系统30还可以包括服务编辑器36。与web编辑器32类似,服务编辑器36可以是低代码服务编辑器,例如是aPaaS中的低代码服务编辑器,用户(如后台开发人员)可以通过该服务编辑器36进行后台服务开发。
具体地,web编辑器32用于接收用户通过开发界面配置的web应用的页面元数据,页面元数据包括web应用的页面承载的组件。相应地,模型搜索装置34用于根据页面承载的组件对应的业务信息,搜索后台服务模型库38,获得所述页面对应的至少一组业务模型。web编辑器32还用于根据至少一组业务模型,生成页面对应的网络应用程序编程接口webAPI。
其中,web编辑器32可以为用户提供可视化的组件,以完成积木式的页面设计开发工作,同时,web编辑器32还可以通过页面组装信息捕捉业务场景,通过模型搜索装置34自动完成web API设计,并通知服务编辑器36。
模型搜索装置34可以是部署在本地的计算设备的软件或者是部署在云环境中的服务(例如云服务)。模型搜索装置34可以根据web编辑器32提供的业务信息搜索匹配的业务模型,例如是根据业务信息中的关键字搜索与该关键字匹配的业务模型。
服务编辑器36可以为用户提供可视化的服务开发能力,实现服务编排可视化,业务流程可视化,业务逻辑脚本化。并且,应用开发系统30还可以包括后台服务模型库38,后台服务模型库38为用户提供高内聚、低耦合的后台服务,支持被用户定制开发及组装为web服务。服务编辑器36支持从后台服务模型库38加载模板,进行定制开发。
基于图3所示的应用开发系统30,本申请实施例还提供了一种接口开发方法。下面结合附图对本申请实施例的接口开发方法进行详细说明。
参见图4所示的接口开发方法的流程图,该方法包括如下步骤:
S402:应用开发系统30接收用户通过开发界面配置的web应用的页面元数据。
页面元数据包括web应用的页面承载的组件。web应用可以包括至少一个页面。例如,餐厅点餐应用可以包括点餐页面和订单页面;又例如,物流管理应用可以包括查询物流页面和寄件页面。
应用开发系统30可以通过提供低代码工具,辅助用户快速创建静态的页面。具体地,应用开发系统30中的web编辑器32可以是低代码web编辑器,该低代码web编辑器提供有组件模板。相应地,应用开发系统30可以向用户呈现开发界面,参见图5所示的开发界面的界面示意图,开发界面50包括多个组件模板52,如按钮、列表、文本框。用户可以通过拖拽或点击方式选择至少一个组件模板。为了便于描述,本实施例将用户选择的组件模型称作目标组件模板。应用开发系统30可以确定用户从多个组件模板中选择的目标组件模板,接收用户对目标组件模板的配置信息54,例如是组件名称、组件需求,获得web应用的至少一个页面承载的组件。
S404:应用开发系统30根据页面承载的组件对应的业务信息,搜索后台服务模型库,获得页面对应的至少一组业务模型。
后台服务模型库存储有后台服务的业务模型。后台服务模型库可以是事先积累的行业后台服务模型库(也称行业后台服务模板仓库)。例如,后台服务模型库可以从开源平台收集开发人员贡献的后台服务的业务模型,或者接收开发人员上传的后台服务的业务模型。
应用开发系统30可以根据页面承载的组件的配置信息,获得组件对应的业务信息,然后应用开发系统30可以根据业务信息中的关键字,通过关键字匹配的方式搜索后台服务模型库,获得页面对应的至少一组业务模型。
考虑到业务信息可以包括多个关键字,应用开发系统30还可以通过布尔逻辑,将多个关键字关联,实现基于多个关键字搜索后台服务模型库,从而获得页面对应的至少一组业务模型。
其中,布尔逻辑可以包括逻辑与(AND)、逻辑或(OR)、逻辑非中的一种或多种。逻辑与代表同时包括两个关键词,AND简写指令一般以空格代替,不明确写出。另外,AND指令还可以用+代替。例如,A AND B表示同时包括关键字A和关键字B。逻辑或代表既可以又可以,或者两者都包括。OR简写指令可用|代替。例如,A OR B表示包括关键字A或关键字B。逻辑非表示排除,通常可以采用减号“-”表示,代表排除减号后面的内容,减号的命令可以多个连续使用。AND、OR等逻辑语通常大写,否则可能被认为是普通的单词,而不是搜索指令。需要说明,OR指令优先于AND指令。例如,Inverted OR Signature files OR file OR index,实际等同于(Inverted OR Signature)(files OR file OR index)。
进一步地,应用开发系统30还可以采用通配符进行智能搜索。通配符可以包括星号(*)或问号(?)。作为预留位置字符,上述字符可以用于搜索精确词组的不同变化。其中,“*”代表一连串字符,“?”代表单个字符。例如,应用开发系统30可以通过如下指令:largest*in the world搜索词组的不同变化形式。又例如,应用开发系统30也可以通过如下指令:progr?m进行智能搜索。应用开发系统30还可以根据num参数调整显示结果。具体地,num取值范围可以设置为1至100,搜索一页默认显示10个搜索结果。用户可以通过设置num参数调整显示结果,末尾的num=1表示一页只显示1个搜索结果。
为了便于理解,仍以“餐厅点餐”应用对获取业务信息以及基于业务信息搜索得到业务模型进行示例说明。
首先,应用开发系统30可以从用于信息展示的组件(通常不包括操作组件,如按钮组件),得到如下业务信息:
表8页面承载的组件对应的业务信息
然后,应用开发系统30根据上述业务信息,结合后台服务模型库,智能搜索匹配的业务模型,具体如下所示:
表9基于业务信息搜索得到的业务模型
需要说明的是,应用开发系统30可以以业务模型作为视图子模型,将多个视图子模型组装或合并为web视图模型(简称为视图模型)。视图模型中的视图子模型(业务模型)间根据模型字段自动关联。
以“餐厅点餐”示例说明,视图模型、视图子模型的关系具体如下所示:
表10视图模型和视图子模型关系
/>
在该示例中,点餐页面对应的web视图模型包括如下视图子模型:用户、桌位、菜单、菜单子项。其中,视图子模型“餐厅”和视图子模型“桌位”可以通过“餐厅ID”关联。这里以业务模型为视图子模型,既方便web API由后台服务的服务API组装,也避免了重复定义视图模型和业务模型字段,导致定义不一致的问题。
在该实施例中,应用开发系统30可以在用户完成静态的页面设计后,触发执行上述S404。其中,用户可以在完成静态的页面设计后,触发接口生成操作,相应地,应用开发系统30可以响应于用户触发的接口生成操作,根据至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。应用开发系统30也可以设置计时器,对用户在开发界面的配置操作进行计时,当用户在开发界面的最近一次配置操作的操作时间满足预设条件,例如最近一次配置操作的操作时间距离当前时间达到预设时长,则视为完成静态的页面设计,应用开发系统30可以根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
S406:应用开发系统30向所述用户呈现至少一组业务模型。
考虑到一个组件的业务信息可以匹配到一个或多个业务模型,一个页面可以承载一个或多个组件,基于此,应用开发系统30根据页面承载的组件对应的业务信息搜索后台服务模型库,可以得到一个或多组业务模型。每一组业务模型可以用于组装为页面的web视图模型。也即,应用开发系统30可以针对一个页面,通过智能搜索后台服务模型库,可以推荐一个或多个web视图模型,每个web视图模型包括一组业务模型。为此,应用开发系统30可以向用户呈现上述至少一组业务模型。
S408:应用开发系统30确定所述用户从至少一组业务模型中选中的一组业务模型。
具体地,用户可以根据业务需求,从应用开发系统30呈现的至少一组业务模型中选择一组业务模型。例如,为了尽可能减少web应用的软件包的规模,用户可以选择业务模型数量最少的一组业务模型。又例如,为了避免单点故障,用户可以过滤业务模型之间调用关系呈现星形分布的一组业务模型。应用开发系统30可以根据用户的操作,确定用户从至少一组业务模型中选中的一组业务模型。
需要说明的是,上述S406至S408为本申请实施例的可选步骤,执行本申请实施例的接口开发方法也可以不执行S406至S408。例如,应用开发系统30可以自动从至少一组业务模型中确定一组业务模型,用于生成页面对应的web API,或者是针对每一组业务模型,均执行后续生成web API的操作。
S410:应用开发系统30从用户选中的一组业务模型的服务API中,确定至少一组目标API。
每个业务模型可以提供至少一个服务API,例如,参见表5,业务模型“订单”可以包括查看订单的服务API和提交订单的服务API。应用开发系统30可以从用户选中的一组业务模型所提供的服务API中,确定至少一组目标API。
具体地,页面对应的web API可以包括查询API或操作API。当页面对应的web API为查询API时,应用开发系统30可以根据页面承载的组件的数据加载要求,从用户选中的一组业务模型的服务API中确定符合所述数据加载要求的至少一组目标API。当页面对应的web API为操作API,应用开发系统30可以根据所述页面承载的组件的操作要求,从所述至少一组业务模型的服务API中确定符合所述操作要求的至少一组目标API。
例如,“餐厅点餐”应用中,点餐页面对应的web API可以包括查询点餐页面的webAPI,订单页面对应的web API可以包括查询订单页面的web API。应用开发系统30可以根据页面承载的组件的数据加载要求,智能生成查询API,如下所示:
表11查询API的输入输出参数及组装信息
订单页面对应的web API还可以包括提交点餐订单、支付点餐订单,应用开发系统30可以根据页面承载的组件的操作要求,智能生成操作API,如下所示:
表12操作API的输入输出参数以及组织信息
由于web视图模型映射到后台服务模型(业务模型),而后台服务模型提供了服务API,如此,web应用的前台可以调用后台的服务API,对返回结果按模型字段关联,从而提供完整的web API。
上述S410为应用开发系统30从所述至少一组业务模型的服务API中,确定至少一组目标API的一种具体实现方式。当应用开发系统30不执行S406、S408时,应用开发系统30可以针对每组业务模型分别确定至少一组目标API,或者自动确定一组业务模型,然后针对该业务模型确定至少一种目标API。
S412:应用开发系统30向用户呈现至少一组目标API。
与上述S406类似,针对每一组业务模型,应用开发系统30可以从该组业务模型的服务API中,确定出至少一组用于组装web API的服务API。为了便于描述,本申请实施例将用于组装web API的服务API记作目标API。应用开发系统30可以向用户呈现上述至少一组目标API,从而实现向用户推荐目标API,以用于组装得到web API。
S414:应用开发系统30确定用户从至少一组目标API中选中的一组目标API。
与上述S408类似,用户可以根据业务需求,从至少一组目标API中选择一组API。相应地,应用开发系统30可以根据用户的操作,确定用户从至少一组目标API中选中的一组目标API。
上述S412至S414为本申请实施例的可选步骤,执行本申请实施例的接口开发方法也可以不执行S412至S414。例如,应用开发系统30可以自动从至少一组目标API中确定一组目标API,用于生成页面对应的web API,或者是针对每一组目标API,均执行后续生成webAPI的操作。
S416:应用开发系统30根据用户选中的一组目标API,生成页面对应的web API。
具体地,应用开发系统30可以获取用户选中的一组目标API中各目标API的模型字段,然后将这一组目标API通过业务模型的模型字段关联,从而实现将一组目标API组装为web API。
上述S416为应用开发系统30根据至少一组目标API,生成所述页面对应的web API的一种具体实现方式。当应用开发系统30不执行S412、S414时,应用开发系统30可以针对每组目标API分别生成页面对应的web API,或者自动确定一组目标API,然后针对该组目标API,生成页面对应的web API。
进一步地,上述S406至S416为本申请实施例中应用开发系统30根据至少一组业务模型,生成页面对应的web API的一种具体实现。在本申请实施例其他可能的实现方式中,应用开发系统30也可以根据至少一组业务模型,通过其他方式生成页面对应的web API。
该方法基于页面元数据如页面承载的组件捕捉到开发人员正在处理的业务场景,获得相应的业务信息,基于该业务信息搜索后台服务模型库获得相应的业务模型,通过业务模型可以自动化地完成web API设计及组装的工作,从而提升开发效率。进一步地,webAPI基于后台服务模型库中业务模型的服务API组装生成,因此,web API对应的web视图模型中业务实体的定义与后台的业务模型中业务实体的定义一致,降低了沟通成本,提高了开发效率。而且,该方法能够实现后台的业务模型与web视图模型的自动映射,无需人工绑定,进一步提高了开发效率。
基于前述实施例的接口开发方法,本申请还提供一种应用开发系统30,如图3所示,包括:
web编辑器32,用于接收用户通过开发界面配置的网络应用的页面元数据,所述页面元数据包括所述网络应用的页面承载的组件;
模型搜索装置34,用于根据所述页面承载的组件对应的业务信息,搜索后台服务模型库38,获得所述页面对应的至少一组业务模型;
所述web编辑器32,还用于根据所述至少一组业务模型,生成所述页面对应的网络应用程序编程接口web API。
示例性地,上述web编辑器32、模型搜索装置34可以通过硬件实现,或者可以通过软件实现。为了便于描述,下面以web编辑器32示例说明。
当通过软件实现时,web编辑器32可以是运行在计算机设备上的应用程序,如计算引擎等。该应用程序可以以虚拟化服务的方式提供给用户使用。虚拟化服务可以包括虚拟机(virtual machine,VM)服务、裸金属服务器(bare metal server,BMS)服务以及容器(container)服务。其中,VM服务可以是通过虚拟化技术在多个物理主机(如计算设备)上虚拟出虚拟机(virtual machine,VM)资源池以为用户按需提供VM进行使用的服务。BMS服务是在多个物理主机上虚拟出BMS资源池以为用户按需提供BMS进行使用的服务。容器服务是在多个物理主机上虚拟出容器资源池以为用户按需提供容器进行使用的服务。VM是模拟出来的一台虚拟的计算机,也即逻辑上的一台计算机。BMS是一种可弹性伸缩的高性能计算服务,计算性能与传统物理机无差别,具有安全物理隔离的特点。容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以达到隔离用户空间、进程和资源的目的。应理解,上述虚拟化服务中的VM服务、BMS服务以及容器服务仅仅是作为具体的示例,在实际应用中,虚拟化服务还可以是其他轻量级或者重量级的虚拟化服务,此处不作具体限定。
当通过硬件实现时,web编辑器32中可以包括至少一个计算设备,如服务器等。或者,web编辑器32也可以是利用专用集成电路(application-specific integratedcircuit,ASIC)实现、或可编程逻辑器件(programmable logic device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。
在一些可能的实现方式中,应用开发系统30还可以包括服务编辑器36,服务编辑器36用于开发业务模型。其中,服务编辑器36可以为用户提供可视化的服务开发能力,实现服务编排可视化,业务流程可视化,业务逻辑脚本化。与web编辑器32类似,服务编辑器36可以通过软件实现,或者通过硬件实现。其实现方式可以参考web编辑器32,在此不再赘述。
在一些可能的实现方式中,应用开发系统30还包括后台服务模型库38。上述后台服务模型库38可以通过硬件实现,或者可以通过软件实现。后台服务模型库38通过硬件实现时,可以包括至少一个具有数据存储能力的存储设备,例如可以包括一个或者多个存储服务器等。后台服务模型库38通过软件实现时,可以是存储业务模型的数据库软件。
在一些可能的实现方式中,所述web编辑器32还用于:
向所述用户呈现所述至少一组业务模型;
确定所述用户从所述至少一组业务模型中选中的一组业务模型;
所述web编辑器32具体用于:
根据所述用户选中的一组业务模型,生成所述页面对应的网络应用程序编程接口web API。
在一些可能的实现方式中,所述web编辑器32具体用于:
从所述至少一组业务模型的服务API中,确定至少一组目标API;
根据所述至少一组目标API,生成所述页面对应的web API。
在一些可能的实现方式中,所述web编辑器32还用于:
向所述用户呈现所述至少一组目标API;
确定所述用户从所述至少一组目标API中选中的一组目标API;
所述web编辑器32具体用于:
根据所述用户选中的一组目标API,生成所述页面对应的web API。
在一些可能的实现方式中,所述页面对应的web API包括查询API;
所述web编辑器32具体用于:
根据所述页面承载的组件的数据加载要求,从所述至少一组业务模型的服务API中确定符合所述数据加载要求的至少一组目标API。
在一些可能的实现方式中,所述页面对应的web API包括操作API;
所述web编辑器32具体用于:
根据所述页面承载的组件的操作要求,从所述至少一组业务模型的服务API中确定符合所述操作要求的至少一组目标API。
在一些可能的实现方式中,所述web编辑器32具体用于:
将所述至少一组目标API通过业务模型的模型字段关联,获得所述页面对应的webAPI。
在一些可能的实现方式中,所述web编辑器32具体用于:
向用户呈现开发界面,所述开发界面包括多个组件模板;
确定所述用户从所述多个组件模板中选择的目标组件模板,接收所述用户对所述目标组件模板的配置信息,获得所述网络应用的至少一个页面承载的组件。
在一些可能的实现方式中,所述模型搜索装置34具体用于:
响应于所述用户触发的接口生成操作,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
在一些可能的实现方式中,所述模型搜索装置34具体用于:
所述用户在所述开发界面的最近一次配置操作的操作时间满足预设条件,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
本申请还提供一种计算设备600。如图6所示,计算设备600包括:总线602、处理器604、存储器606和通信接口608。处理器604、存储器606和通信接口608之间通过总线602通信。计算设备600可以是服务器或终端设备。应理解,本申请不限定计算设备600中的处理器、存储器的个数。
总线602可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。总线604可包括在计算设备600各个部件(例如,存储器606、处理器604、通信接口608)之间传送信息的通路。
处理器604可以包括中央处理器(central processing unit,CPU)、图形处理器(graphics processing unit,GPU)、微处理器(micro processor,MP)或者数字信号处理器(digital signal processor,DSP)等处理器中的任意一种或多种。
存储器606可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。处理器604还可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器,机械硬盘(hard diskdrive,HDD)或固态硬盘(solid state drive,SSD)。存储器606中存储有可执行的程序代码,处理器604执行该可执行的程序代码以实现前述接口开发方法。具体的,存储器606上存有应用开发系统30用于执行接口开发方法的指令。
通信接口603使用例如但不限于网络接口卡、收发器一类的收发模块,来实现计算设备600与其他设备或通信网络之间的通信。
本申请实施例还提供了一种计算设备集群。该计算设备集群包括至少一台计算设备。该计算设备可以是服务器,例如是中心服务器、边缘服务器,或者是本地数据中心中的本地服务器。在一些实施例中,计算设备也可以是台式机、笔记本电脑或者智能手机等终端设备。
如图7所示,所述计算设备集群包括至少一个计算设备600。计算设备集群中的一个或多个计算设备600中的存储器606中可以存有相同的、应用开发系统30用于执行接口开发方法的指令。
在一些可能的实现方式中,该计算设备集群中的一个或多个计算设备600也可以用于执行应用开发系统30用于执行接口开发方法的部分指令。换言之,一个或多个计算设备600的组合可以共同执行应用开发系统30用于执行接口开发方法的指令。
需要说明的是,计算设备集群中的不同的计算设备600中的存储器606可以存储不同的指令,用于执行应用开发系统30的部分功能。
图8示出了一种可能的实现方式。如图8所示,两个计算设备600A和600B通过通信接口608实现连接。计算设备600A中的存储器上存有用于执行web编辑器的功能的指令。计算设备600B中的存储器上存有用于执行模型搜索装置34的功能的指令。进一步地,计算设备600A还存有用于执行服务编辑器36的功能的指令,计算设备600B还存有用于执行后台服务模型库38的功能的指令。换言之,计算设备600A和600B的存储器606共同存储了应用开发系统30用于执行接口开发方法的指令。
图8所示的计算设备集群之间的连接方式可以是考虑到本申请提供的接口开发方法需要较多算力进行搜索、存储。因此,考虑将模型搜索装置34、后台服务模型库38实现的功能交由计算设备600B执行。
应理解,图8中示出的计算设备600A的功能也可以由多个计算设备600完成。同样,计算设备600B的功能也可以由多个计算设备600完成。
在一些可能的实现方式中,计算设备集群中的一个或多个计算设备可以通过网络连接。其中,所述网络可以是广域网或局域网等等。图9示出了一种可能的实现方式。如图9所示,两个计算设备600C和600D之间通过网络进行连接。具体地,通过各个计算设备中的通信接口与所述网络进行连接。在这一类可能的实现方式中,计算设备600C中的存储器606中存有执行web编辑器32的功能的指令。同时,计算设备600D中的存储器606中存有执行模型搜索装置34的功能的指令。进一步地,计算设备600C还存有用于执行服务编辑器36的功能的指令,计算设备600D还存有用于执行后台服务模型库38的功能的指令。
图9所示的计算设备集群之间的连接方式可以是考虑到本申请提供的接口开发方法需要较多算力进行搜索、存储,因此考虑将元数据管理模块104实现的功能交由计算设备600D执行。
应理解,图9中示出的计算设备600C的功能也可以由多个计算设备600完成。同样,计算设备600D的功能也可以由多个计算设备600完成。
本申请实施例还提供了一种计算机可读存储介质。所述计算机可读存储介质可以是计算设备能够存储的任何可用介质或者是包含一个或多个可用介质的数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘)等。该计算机可读存储介质包括指令,所述指令指示计算设备执行上述应用于应用开发系统30用于执行接口开发方法。
本申请实施例还提供了一种包含指令的计算机程序产品。所述计算机程序产品可以是包含指令的,能够运行在计算设备上或被储存在任何可用介质中的软件或程序产品。当所述计算机程序产品在至少一个计算设备上运行时,使得至少一个计算设备执行上述接口开发方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的保护范围。
Claims (23)
1.一种接口开发方法,其特征在于,所述方法包括:
接收用户通过开发界面配置的网络应用的页面元数据,所述页面元数据包括所述网络应用的页面承载的组件;
根据所述页面承载的组件对应的业务信息,搜索后台服务模型库,获得所述页面对应的至少一组业务模型;
根据所述至少一组业务模型,生成所述页面对应的网络应用程序编程接口web API。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
向所述用户呈现所述至少一组业务模型;
确定所述用户从所述至少一组业务模型中选中的一组业务模型;
所述根据所述至少一组业务模型,生成所述页面对应的网络应用程序编程接口webAPI,包括:
根据所述用户选中的一组业务模型,生成所述页面对应的网络应用程序编程接口webAPI。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述至少一组业务模型,生成所述页面对应的网络应用程序编程接口web API,包括:
从所述至少一组业务模型的服务API中,确定至少一组目标API;
根据所述至少一组目标API,生成所述页面对应的web API。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
向所述用户呈现所述至少一组目标API;
确定所述用户从所述至少一组目标API中选中的一组目标API;
所述根据所述至少一组目标API,生成所述页面对应的web API,包括:
根据所述用户选中的一组目标API,生成所述页面对应的web API。
5.根据权利要求3或4所述的方法,其特征在于,所述页面对应的web API包括查询API;
所述从所述至少一组业务模型的服务API中,确定至少一组目标API,包括:
根据所述页面承载的组件的数据加载要求,从所述至少一组业务模型的服务API中确定符合所述数据加载要求的至少一组目标API。
6.根据权利要求3或4所述的方法,其特征在于,所述页面对应的web API包括操作API;
所述从所述至少一组业务模型的服务API中,确定至少一组目标API,包括:
根据所述页面承载的组件的操作要求,从所述至少一组业务模型的服务API中确定符合所述操作要求的至少一组目标API。
7.根据权利要求3至6任一项所述的方法,其特征在于,所述根据所述至少一组目标API,生成所述页面对应的web API,包括:
将所述至少一组目标API通过业务模型的模型字段关联,获得所述页面对应的webAPI。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述接收用户通过开发界面配置的网络应用的页面元数据,包括:
向用户呈现开发界面,所述开发界面包括多个组件模板;
确定所述用户从所述多个组件模板中选择的目标组件模板,接收所述用户对所述目标组件模板的配置信息,获得所述网络应用的至少一个页面承载的组件。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型,包括:
响应于所述用户触发的接口生成操作,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
10.根据权利要求1至8任一项所述的方法,其特征在于,所述根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型,包括:
所述用户在所述开发界面的最近一次配置操作的操作时间满足预设条件,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
11.一种应用开发系统,其特征在于,所述系统包括:
web编辑器,用于接收用户通过开发界面配置的网络应用的页面元数据,所述页面元数据包括所述网络应用的页面承载的组件;
模型搜索装置,用于根据所述页面承载的组件对应的业务信息,搜索后台服务模型库,获得所述页面对应的至少一组业务模型;
所述web编辑器,还用于根据所述至少一组业务模型,生成所述页面对应的网络应用程序编程接口web API。
12.根据权利要求11所述的系统,其特征在于,所述web编辑器还用于:
向所述用户呈现所述至少一组业务模型;
确定所述用户从所述至少一组业务模型中选中的一组业务模型;
所述web编辑器具体用于:
根据所述用户选中的一组业务模型,生成所述页面对应的网络应用程序编程接口webAPI。
13.根据权利要求11或12所述的系统,其特征在于,所述web编辑器具体用于:
从所述至少一组业务模型的服务API中,确定至少一组目标API;
根据所述至少一组目标API,生成所述页面对应的web API。
14.根据权利要求13所述的系统,其特征在于,所述web编辑器还用于:
向所述用户呈现所述至少一组目标API;
确定所述用户从所述至少一组目标API中选中的一组目标API;
所述web编辑器具体用于:
根据所述用户选中的一组目标API,生成所述页面对应的web API。
15.根据权利要求13或14所述的系统,其特征在于,所述页面对应的web API包括查询API;
所述web编辑器具体用于:
根据所述页面承载的组件的数据加载要求,从所述至少一组业务模型的服务API中确定符合所述数据加载要求的至少一组目标API。
16.根据权利要求13或14所述的系统,其特征在于,所述页面对应的web API包括操作API;
所述web编辑器具体用于:
根据所述页面承载的组件的操作要求,从所述至少一组业务模型的服务API中确定符合所述操作要求的至少一组目标API。
17.根据权利要求13至16任一项所述的系统,其特征在于,所述web编辑器具体用于:
将所述至少一组目标API通过业务模型的模型字段关联,获得所述页面对应的webAPI。
18.根据权利要求11至17任一项所述的系统,其特征在于,所述web编辑器具体用于:
向用户呈现开发界面,所述开发界面包括多个组件模板;
确定所述用户从所述多个组件模板中选择的目标组件模板,接收所述用户对所述目标组件模板的配置信息,获得所述网络应用的至少一个页面承载的组件。
19.根据权利要求11至18任一项所述的系统,其特征在于,所述模型搜索装置具体用于:
响应于所述用户触发的接口生成操作,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
20.根据权利要求11至18任一项所述的系统,其特征在于,所述模型搜索装置具体用于:
所述用户在所述开发界面的最近一次配置操作的操作时间满足预设条件,根据所述至少一个页面承载的组件对应的业务信息,搜索后台服务模型库,获得业务模型。
21.一种计算设备集群,其特征在于,所述计算设备集群包括至少一台计算设备,所述至少一台计算设备包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储有计算机可读指令;所述至少一个处理器执行所述计算机可读指令,以使得所述计算设备集群执行如权利要求1至10中任一项所述的方法。
22.一种计算机可读存储介质,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至10任一项所述的方法。
23.一种计算机程序产品,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至10任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211392876.6A CN118034680A (zh) | 2022-11-08 | 2022-11-08 | 一种接口开发方法及相关设备 |
PCT/CN2023/100929 WO2024098755A1 (zh) | 2022-11-08 | 2023-06-19 | 一种接口开发方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211392876.6A CN118034680A (zh) | 2022-11-08 | 2022-11-08 | 一种接口开发方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118034680A true CN118034680A (zh) | 2024-05-14 |
Family
ID=91002771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211392876.6A Pending CN118034680A (zh) | 2022-11-08 | 2022-11-08 | 一种接口开发方法及相关设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN118034680A (zh) |
WO (1) | WO2024098755A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106843835A (zh) * | 2016-12-21 | 2017-06-13 | 中国电子科技网络信息安全有限公司 | 一种元数据定制的应用系统软件构建系统、系统构建方法 |
CN112835560A (zh) * | 2021-03-04 | 2021-05-25 | 广州图创计算机软件开发有限公司 | Web多终端低代码智能软件开发平台 |
CN113918140A (zh) * | 2021-10-21 | 2022-01-11 | 浪潮软件集团有限公司 | 一种基于拖拽方式生成前后端代码的系统构建方法 |
CN114115883B (zh) * | 2022-01-26 | 2022-06-03 | 广州云徙科技有限公司 | 一种使用中台业务能力快速构建前端应用的方法 |
-
2022
- 2022-11-08 CN CN202211392876.6A patent/CN118034680A/zh active Pending
-
2023
- 2023-06-19 WO PCT/CN2023/100929 patent/WO2024098755A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024098755A1 (zh) | 2024-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10866788B2 (en) | System and method for automated generation of integration elements modeling process flow for an integration process with a swagger API | |
CA2999619C (en) | Application engineering platform | |
US11119746B2 (en) | Extensions for deployment patterns | |
KR101442360B1 (ko) | 플랫폼들 간 가상 머신 이미지 포팅 | |
US10929490B2 (en) | Network search query | |
US20140344123A1 (en) | Dynamically modifying workload patterns in a cloud | |
US20140136712A1 (en) | Cloud resources as a service multi-tenant data model | |
US11403354B2 (en) | Managing search queries of a search service | |
US9703689B2 (en) | Defect detection using test cases generated from test models | |
WO2022100439A1 (en) | Workflow patching | |
US9342527B2 (en) | Sharing electronic file metadata in a networked computing environment | |
US10839036B2 (en) | Web browser having improved navigational functionality | |
US11093566B2 (en) | Router based query results | |
CN118034680A (zh) | 一种接口开发方法及相关设备 | |
US20210209511A1 (en) | Automatic rule learning in shared resource solution design | |
US11720554B2 (en) | Iterative query expansion for document discovery | |
US20220391180A1 (en) | Dynamic code snippet promotion | |
US11176134B2 (en) | Navigation paths between content items | |
US11138273B2 (en) | Onboarding services | |
US20200097512A1 (en) | Provisioning a customized software stack for network-based question and answer services | |
US20240028408A1 (en) | Reference implementation of cloud computing resources | |
US11010567B2 (en) | Enabling sponsored solutions for technical instruction augmentation | |
US11829741B2 (en) | Instantiated deployment of microservices | |
US20230259374A1 (en) | Task-oriented user guidance | |
AU2021210221B2 (en) | Performing search based on position information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |