CN111459466B - 代码生成方法、装置、设备及存储介质 - Google Patents
代码生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN111459466B CN111459466B CN202010246338.0A CN202010246338A CN111459466B CN 111459466 B CN111459466 B CN 111459466B CN 202010246338 A CN202010246338 A CN 202010246338A CN 111459466 B CN111459466 B CN 111459466B
- Authority
- CN
- China
- Prior art keywords
- interface
- code
- field
- code generation
- data
- 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.)
- Active
Links
Classifications
-
- 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/31—Programming languages or programming paradigms
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例公开了一种代码生成方法、装置、设备及存储介质,属于计算机技术领域。该方法包括:对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型,根据每个字段类型获取对应的模板代码,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。因此可以实现根据接口数据自动生成对应的接口代码,无需人工编写,可以节约人力和时间,提高了接口代码的生成效率,并且还可以避免人工编写代码而出现代码编写错误的情况,提高了接口代码的准确率。
Description
技术领域
本申请实施例涉及计算机技术领域,特别涉及一种代码生成方法、装置、设备及存储介质。
背景技术
在开发应用时,前端开发和后端开发是相互分离的两个过程,但是前端需要通过接口调用后端,因此前端开发人员与后端开发人员需要根据接口数据对前端和后端进行联合开发。该接口数据用于规范接口的形式,可以包括接口中字段的名称、类型、含义等。
目前,由后端开发人员进行接口数据的编写,并将该接口数据提供给前端开发人员,前端开发人员根据接口数据编写对应的接口代码,通过运行接口代码实现前端通过接口对后端进行调用。但是,人工编写接口代码会耗费人力和时间,并且接口代码的生成效率低。
发明内容
本申请实施例提供了一种代码生成方法、装置、设备及存储介质,可以提高接口代码的生成效率。所述技术方案如下:
一方面,提供了一种代码生成方法,所述方法包括:
获取接口数据,所述接口数据包括至少一个字段名称以及每个字段名称的字段类型;
对所述接口数据进行解析处理,得到所述至少一个字段名称以及所述每个字段名称的字段类型;
根据每个字段类型获取对应的模板代码;
将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码。
可选地,所述获取接口数据,包括:
接收携带所述接口数据的代码生成指令,所述代码生成指令指示根据所述接口数据生成对应的接口代码。
可选地,所述将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码,包括:
分别将所述每个字段名称与对应的模板代码进行组合,得到多个字段代码;
将所述多个字段代码进行组合,得到所述接口代码。
可选地,所述分别将所述每个字段名称与对应的模板代码进行组合,得到多个字段代码,包括:
分别将每个字段名称拼接于对应的模板代码的末尾,得到多个字段代码。
可选地,所述将所述多个字段代码进行组合,得到所述接口代码,包括:
按照所述多个字段名称的排列顺序,依次将所述多个字段名称对应的字段代码进行组合,得到所述接口代码。
可选地,所述获取接口数据,包括:
通过代码生成应用,向接口管理服务器发送对所述接口数据的访问请求;
通过所述代码生成应用,接收所述接口管理服务器返回的所述接口数据。
可选地,所述方法还包括:
通过所述代码生成应用生成代码生成界面,所述代码生成界面包括代码生成选项;
当检测到所述代码生成界面中包括接口数据时,将所述代码生成选项设置为可触发状态;
当检测到所述代码生成界面中不包括接口数据时,将所述代码生成选项设置为不可触发状态。
可选地,所述获取接口数据,包括:
从所述代码生成界面中获取所述接口数据。
可选地,所述将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码之后还包括:
在所述代码生成界面中显示所述接口代码。
可选地,所述当检测到所述代码生成界面中包括接口数据时,将所述代码生成选项设置为可触发状态,包括:
当检测到所述代码生成界面中包括目标域名时,确定所述代码生成界面中包括接口数据,所述目标域名用于表示接口数据所在界面的域名;
将所述代码生成选项设置为可触发状态。
可选地,所述接口数据中还包括每个字段名称对应的注释数据,所述将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码,包括:
将每个字段名称、所述每个字段名称的字段类型对应的模板代码以及所述每个字段名称对应的注释数据进行组合,得到所述接口数据对应的接口代码。
另一方面,提供了一种代码生成装置,所述装置包括:
数据获取模块,用于获取接口数据,所述接口数据包括至少一个字段名称以及每个字段名称的字段类型;
数据处理模块,用于对所述接口数据进行解析处理,得到所述至少一个字段名称以及所述每个字段名称的字段类型;
模板代码获取模块,用于根据每个字段类型获取对应的模板代码;
组合模块,用于将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码。
可选地,所述数据获取模块,包括:
指令接收单元,用于接收携带所述接口数据的代码生成指令,所述代码生成指令指示根据所述接口数据生成对应的接口代码。
可选地,所述组合模块,包括:
第一组合单元,用于分别将所述每个字段名称与对应的模板代码进行组合,得到多个字段代码;
第二组合单元,用于将所述多个字段代码进行组合,得到所述接口代码。
可选地,所述第一组合单元,还用于:
分别将每个字段名称拼接于对应的模板代码的末尾,得到多个字段代码。
可选地,所述第二组合单元,还用于:
按照所述多个字段名称的排列顺序,依次将所述多个字段名称对应的字段代码进行组合,得到所述接口代码。
可选地,所述数据获取模块,包括:
请求发送单元,用于通过代码生成应用,向接口管理服务器发送对所述接口数据的访问请求;
数据接收单元,用于通过所述代码生成应用,接收所述接口管理服务器返回的所述接口数据。
可选地,所述装置还包括:
界面显示模块,用于通过所述代码生成应用生成代码生成界面,所述代码生成界面包括代码生成选项;
第一设置模块,用于当检测到所述代码生成界面中包括接口数据时,将所述代码生成选项设置为可触发状态;
第二设置模块,用于当检测到所述代码生成界面中不包括接口数据时,将所述代码生成选项设置为不可触发状态。
可选地,所述数据获取模块,包括:
数据获取单元,用于从所述代码生成界面中获取所述接口数据。
可选地,所述装置还包括:
代码显示模块,用于在所述代码生成界面中显示所述接口代码。
可选地,所述第一设置模块,包括:
域名检测单元,用于当检测到所述代码生成界面中包括目标域名时,确定所述代码生成界面中包括接口数据,所述目标域名用于表示接口数据所在界面的域名;
设置单元,用于将所述代码生成选项设置为可触发状态。
可选地,所述接口数据中还包括每个字段名称对应的注释数据,所述组合模块,包括:
第三组合单元,用于将每个字段名称、所述每个字段名称的字段类型对应的模板代码以及所述每个字段名称对应的注释数据进行组合,得到所述接口数据对应的接口代码。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如所述代码生成方法中所执行的操作。
再一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行,以实现如所述代码生成方法中所执行的操作。
本申请实施例提供的方法、装置、设备及存储介质,对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型,根据每个字段类型获取对应的模板代码,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。因此可以实现根据接口数据自动生成对应的接口代码,无需人工编写,可以节约人力和时间,提高了接口代码的生成效率,并且还可以避免人工编写代码而出现代码编写错误的情况,提高了接口代码的准确率。
并且,生成接口代码之后,可以在代码生成界面中显示该接口代码。实现了将接口代码以一种可视化的方式提供给开发人员,便于开发人员对接口代码进行检查。在代码生成界面中设置编辑选项,可以方便开发人员对接口代码进行编辑,在代码生成界面中设置运行选项,可以方便开发人员根据接口代码的运行情况进一步对接口代码进行检查和编辑。
并且,将每个字段名称、每个字段名称的字段类型对应的模板代码以及每个字段名称对应的注释数据进行组合,得到接口代码。因此生成的接口代码中还包括对字段名称的注释数据,便于开发人员根据注释数据来对接口代码进行理解。
并且,将代码生成选项设置为第一显示方式,表示该代码生成图标当前处于可触发状态;将代码生成选项设置为第二显示方式,表示该代码生成图标当前处于不可触发状态。通过区分第一显示方式和第二显示方式,以一种可视化的方式来表示代码生成图标当前的状态为可触发状态还是不可触发状态,使用户能够直观地确定代码生成图标当前的状态。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种实施环境的示意图;
图2是本申请实施例提供的一种代码生成方法的流程图;
图3是本申请实施例提供的另一种代码生成方法的流程图;
图4是本申请实施例提供的一种代码生成界面的示意图;
图5是本申请实施例提供的另一种代码生成界面的示意图;
图6是本申请实施例提供的另一种代码生成方法的流程图;
图7是本申请实施例提供的另一种代码生成方法的流程图;
图8是本申请实施例提供的一种代码生成装置的结构示意图;
图9是本申请实施例提供的另一种代码生成装置的结构示意图;
图10是本申请实施例提供的一种终端的结构示意图;
图11是本申请实施例提供的一种服务器的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
可以理解,本申请中的至少一个是指一个或者一个以上,例如,至少一个字段名称可以是一个字段名称、两个字段名称、三个字段名称等任一大于等于一的整数个字段名称。多个是指两个或者两个以上,例如,多个字段代码可以是两个字段代码、三个字段代码等任一大于等于二的整数个字段代码。每个是指至少一个中的每一个,例如,每个字段名称是指多个字段名称中的每一个字段名称,若多个字段名称为3个字段名称,则每个字段名称是指3个字段名称中的每一个字段名称。
本申请实施例提供了一种根据接口数据生成对应的接口代码的方法。该方法的执行主体为计算机设备,计算机设备获取接口数据,对该接口数据进行解析处理,得到接口数据中包括的至少一个字段名称以及每个字段名称的字段类型,计算机设备根据每个字段类型获取对应的模板代码,将每个字段名称对应的模板代码进行组合,得到该接口数据对应的接口代码。
该计算机设备可以为终端或者接口管理服务器。或者,该计算机设备包括终端和接口管理服务器。图1是本申请实施例提供的一种代码生成方法的实施环境,该实施环境中包括:终端101和接口管理服务器102。其中,终端101可以为手机、平板电脑、智能电视、笔记本电脑、台式计算机等多种类型的设备,接口管理服务器102可以是一台服务器,或者由若干台服务器组成的服务器集群,或者是一个云计算服务中心。终端101中安装有代码生成应用,终端101可通过该代码生成应用与接口管理服务器进行交互,实现根据接口数据生成对应的接口代码。
其中,终端101通过该代码生成应用向接口管理服务器发送对接口数据的访问请求,接口管理服务器102根据该访问请求将接口数据发送给终端101,终端101通过代码生成应用接收返回的接口数据,对该接口数据进行解析处理,得到接口数据中包括的至少一个字段名称以及每个字段名称的字段类型,终端根据每个字段类型获取对应的模板代码,将每个字段名称对应的模板代码进行组合,得到该接口数据对应的接口代码。
图2是本申请实施例提供的一种代码生成方法的流程图。参见图2,该方法包括:
201、获取接口数据,接口数据包括至少一个字段名称以及每个字段名称的字段类型。
202、对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型。
203、根据每个字段类型获取对应的模板代码。
204、将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。
本申请实施例提供的代码生成方法,对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型,根据每个字段类型获取对应的模板代码,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。可以实现根据接口数据自动生成对应的接口代码,无需人工编写,节约人力和时间,提高了接口代码的生成效率,并且还可以避免人工编写代码而出现代码编写错误的情况,提高了接口代码的准确率。
可选地,获取接口数据,包括:
接收携带接口数据的代码生成指令,代码生成指令指示根据接口数据生成对应的接口代码。
可选地,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码,包括:
分别将每个字段名称与对应的模板代码进行组合,得到多个字段代码;
将多个字段代码进行组合,得到接口代码。
可选地,分别将每个字段名称与对应的模板代码进行组合,得到多个字段代码,包括:
分别将每个字段名称拼接于对应的模板代码的末尾,得到多个字段代码。
可选地,将多个字段代码进行组合,得到接口代码,包括:
按照多个字段名称的排列顺序,依次将多个字段名称对应的字段代码进行组合,得到接口代码。
可选地,获取接口数据,包括:
通过代码生成应用,向接口管理服务器发送对接口数据的访问请求;
通过代码生成应用,接收接口管理服务器返回的接口数据。
可选地,方法还包括:
通过代码生成应用生成代码生成界面,代码生成界面包括代码生成选项;
当检测到代码生成界面中包括接口数据时,将代码生成选项设置为可触发状态;
当检测到代码生成界面中不包括接口数据时,将代码生成选项设置为不可触发状态。
可选地,获取接口数据,包括:
从代码生成界面中获取接口数据。
可选地,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码之后还包括:
在代码生成界面中显示接口代码。
可选地,当检测到代码生成界面中包括接口数据时,将代码生成选项设置为可触发状态,包括:
当检测到代码生成界面中包括目标域名时,确定代码生成界面中包括接口数据,目标域名用于表示接口数据所在界面的域名;
将代码生成选项设置为可触发状态。
可选地,接口数据中还包括每个字段名称对应的注释数据,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码,包括:
将每个字段名称、每个字段名称的字段类型对应的模板代码以及每个字段名称对应的注释数据进行组合,得到接口数据对应的接口代码。
图3是本申请实施例提供的另一种代码生成方法的流程图。本申请实施例的交互主体为终端和接口管理服务器,参见图3,该方法包括:
301、终端通过代码生成应用,向接口管理服务器发送对接口数据的访问请求。
终端中运行有代码生成应用,终端通过该代码生成应用与接口管理服务器建立通信连接。则终端可以通过该代码生成应用,向该接口管理服务器发送对接口数据的访问请求,该访问请求指示将该接口数据发送给该终端,该访问请求可以携带该接口数据的数据标识,则接口管理服务器可以通过该数据标识来确定对应的接口数据,该数据标识可以为接口数据的名称、编号等。
代码生成应用用于根据接口数据生成对应的接口代码,该代码生成应用可以为浏览器,该浏览器中包括具有代码生成功能的浏览器插件,则浏览器可以通过该浏览器插件执行根据接口数据生成对应的接口代码的步骤。或者,该代码生成应用还可以为其他具有代码生成功能的APP(Application,第三方应用程序),本申请对此不做限定。
接口管理服务器用于在开发应用过程中,对接口数据进行新增、修改或者维护等,可以提供接口管理服务。例如,该接口管理服务器为YAPI(一种接口管理平台)的服务器。其中,该接口管理服务中存储有接口数据,该接口数据可以由开发人员上传至该接口管理服务器,或者由接口管理服务从其他计算机设备中下载得到。
接口数据用于规范接口的形式,接口数据包括至少一个字段名称以及每个字段名称的字段类型。该接口数据可以为任一接口的数据,例如该接口为信息获取接口、信息发送接口、登录接口等实现不同功能的接口。其中,字段名称是指接口中的字段的名称,字段类型是指该字段所表示的数据的类型。除此之外,该接口数据还可以包括表示字段是否为必须项的标记以及对字段的注释数据等。其中,该接口数据可以为表格接口数据或者文本接口数据,还可以为其他类型的接口数据等,本申请实施例对此不做限定。
其中,该字段名称是指接口数据对应的接口中的字段的名称,字段类型是指字段表示的数据的类型,字段名称与字段类型对应,并且不同字段名称的字段类型可能相同,也可能不同。字段名称可以为接口的开发人员定义的任一名称,字段类型可以包括number(数字)、string(字符串)、object(对象)等。
例如,接口数据为表1所示的表格接口数据,接口数据中包括字段名称、字段类型、表示字段是否为必须项的标记以及注释数据。参见表1,每一行包括一个字段名称以及该字段名称的字段类型、该字段名称是否为必须项的标记、该字段名称的注释数据。该表格接口数据为获取点歌订单信息的接口数据。其中,表格中的所有字段名称均为必须项,表示该接口中必须包括这些字段名称对应的字段。例如,表1中字段名称“code”对应的字段类型为“number”,对应的注释数据为“返回码(0=成功)”,表示“code”对应的字段为返回码,且返回码为0时成功;字段名称“msg”对应的字段类型为“string”,对应的注释数据为“返回信息”,表示“code”对应的字段为返回信息;字段名称“data”对应的字段类型为“object”,对应的注释数据为“没有打赏时为空值”,表示没有打赏时“data”对应的字段为空值。除此之外,表1中还包括字段名称“chiefOrderId”、“chiefSongName”、“chiefUserName”、“chiefRewardCoin”、“chiefRewardCoin”、“songOrderTotalRewardCoin”,以及这些字段名称的字段类型以及对应的注释数据。
表1
字段名称 | 字段类型 | 是否为必须项 | 注释数据 |
code | number | 必须 | 返回码(0=成功) |
msg | string | 必须 | 返回信息 |
data | object | 必须 | 没有打赏时为空值 |
chiefOrderId | number | 必须 | 首席订单 |
chiefSongName | string | 必须 | 首席歌曲 |
chiefUserName | string | 必须 | 最后打赏用户名 |
chiefRewardCoin | number | 必须 | 最后打赏金额 |
songOrderTotalRewardCoin | number | 必须 | 打赏总金额 |
302、接口管理服务器接收到对接口数据的访问请求时,向终端返回该接口数据。
当接口管理服务器接收到终端发送的对接口数据的访问请求时,获取该访问请求指示的该接口数据,将该接口数据发送给终端。
需要说明的是,该访问请求中可以携带接口数据的访问地址。则在步骤302之前,终端通过代码生成应向接口管理服务器发送携带接口数据的访问地址的访问请求,则接口管理服务器根据访问请求中的访问地址,获取到该访问地址对应的接口数据,将该接口数据返回给终端。例如,该访问地址可以为该接口数据对应的网页地址,该网页地址对应的网页中包括该接口数据。
可选地,该访问地址可以为终端中预先存储的访问地址,或者由用户手动输入至该终端的访问地址。或者,还可以由终端通过代码生成应用向接口管理服务器发送对接口数据的访问地址获取请求,接口管理服务器接收到该访问地址获取请求时,获取该访问地址获取请求指示的接口数据的访问地址,将该接口数据的访问地址发送给终端,则终端通过代码生成应用,接收接口管理服务器返回的接口数据的访问地址,根据该访问地址生成访问请求。
303、终端通过代码生成应用,接收接口管理服务器返回的接口数据。
304、终端通过代码生成应用生成代码生成界面,代码生成界面包括代码生成选项。
当终端接收到接口数据,则通过代码生成应用生成代码生成界面。
其中,该代码生成界面用于生成接口代码,代码生成界面中包括代码生成选项,该代码生成选项用于指示根据当前代码生成界面中显示的接口数据生成对应的接口代码。
在一种可能实现方式中,终端对代码生成界面进行检测。当终端检测到代码生成界面中包括接口数据时,将代码生成选项设置为可触发状态。当终端检测到代码生成界面中不包括接口数据时,将代码生成选项设置为不可触发状态。其中,可触发状态表示可以对该代码生成选项执行触发操作,不可触发状态表示不可以对该代码生成选项执行触发操作。
由于代码生成选项用于指示根据当前的代码生成界面中的接口数据生成对应的接口代码,若当前的代码生成界面中不包括接口数据,则触发该代码生成选项后,终端无法获取接口数据。因此,终端可以检测代码生成界面中是否包括接口数据。若代码生成界面中包括接口数据,则终端可以获取到该接口数据,生成接口数据对应的接口代码,则终端将代码生成选项设置为可触发状态,以便用户通过触发该代码生成选项来得到该接口数据对应的接口代码。若代码生成界面中不包括接口数据,则终端无法获取接口数据并生成对应的接口代码,则终端可以将代码生成选项设置为不可触发状态。
可选地,当终端检测代码生成界面中包括目标域名时,确定代码生成界面中包括接口数据,则将代码生成选项设置为可触发状态。其中,域名(Domain Name)又称网域,是由一串用点分隔的名字组成的Internet(互联网)上某一台计算机设备的名称,是在数据传输时对计算机设备的定位标识。该目标域名是指表示接口数据所在界面的域名,也即是在该目标域名对应的界面中,包括接口数据。因此,当终端检测到代码生成界面中包括目标域名时,确定该代码生成界面对应的域名为该目标域名,则该代码生成界面中包括接口数据,将代码生成选项设置为可触发状态。另外,当终端检测到代码生成界面中不包括目标域名时,确定该代码生成界面对应的域名不是目标域名,则该代码生成界面中不包括接口数据,则将代码生成选项设置为不可触发状态。
可选地,代码生成选项可以为代码生成图标。当终端检测到该代码生成界面中包括接口数据时,将该代码生成图标设置为第一显示方式,表示该代码生成图标当前处于可触发状态。当终端检测到该代码生成界面中不包括接口数据时,将该代码生成图标设置为第二显示方式,表示该代码生成图标当前处于不可触发状态。其中,代码生成图标的第一显示方式可以比第二显示方式的亮度高,或者通过其他方式来对第一显示方式和第二显示方式进行区分。例如,第一显示方式为以彩色形式显示代码生成图标,第二显示方式为以灰色形式显示代码生成图标等。因此,通过将代码生成图标设置为第一显示方式或者第二显示方式,以一种可视化的方式来表示代码生成图标当前的状态为可触发状态还是不可触发状态,用户能够直观地确定代码生成图标当前的状态,并决定是否对代码生成图标执行触发操作。
可选地,当代码生成界面中包括接口数据时,该代码生成界面中还可以包括接口数据对应的接口的属性信息和请求参数等,其中接口的基本信息可以包括接口名称、接口路径、接口创建人的名字和头像、接口的状态、接口的更新时间等,接口的请求参数可以包括参数名称、参数类型、表示字段是否为必须项的标记、对参数的注释数据等。其中,接口的请求参数是指调用该接口时所相关的参数。
图4是本申请实施例提供的一种代码生成界面的示意图,参见图4,代码生成界面中包括代码生成选项、基本信息、请求参数和接口数据。
基本信息中包括接口名称、更新时间、接口路径、创建人以及状态。图4中的接口名称为“获取房间最后一次打赏信息”,更新时间为“2020-02-1311:50:01”,创建人为“李明”,状态为“未完成”,表示该接口处于未完成状态。请求参数中包括参数名称、参数类型、表示字段是否为必须项的标记和注释数据。图4中的参数名称为“Roomid”,参数类型为“Long(表示一种整型)”,是否为必须项的标记为“是”,表示该接口的请求参数是必须项,注释数据为“房间标识”,标识参数名称对应的字段为房间标识。代码生成界面中的接口参数为表格接口数据,该代码生成界面中显示的接口数据与上述表1中的接口数据类似,在此不再一一赘述。
305、终端从代码生成界面中获取接口数据,对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型。
终端在代码生成界面显示接口数据之后,当用户想要获取该接口数据对应的接口代码时,可以触发代码生成界面中的代码生成选项,当终端基于该代码生成界面,检测到对代码生成选项的触发操作时,获取代码生成界面中的接口数据,并执行根据接口数据生成对应的接口代码的步骤。
其中,在生成代码的过程中,终端首先对该接口数据进行解析处理,得到接口数据中的至少一个字段名称以及每个字段名称对应的字段类型。
其中,该触发操作可以为单击操作、双击操作、滑动操作、长按操作等。
在一种可能实现方式中,代码生成界面中的接口数据为表格接口数据,则终端对该表格接口数据中的表格元素进行遍历,将表格接口数据中被折叠的数据全部展开,得到该表格接口数据中的全部数据。终端对每一个数据进行解析处理,得到表格接口数据中的至少一个字段名称以及每个字段名称的字段类型。
306、终端根据每个字段类型获取对应的模板代码。
终端中预先存储有多个模板代码,模板代码用于生成任一接口数据对应的接口代码,该模板代码可以为多个字符串拼接得到的模板代码。其中,模板代码与字段类型对应,每一个字段类型对应一个模板代码,相同字段类型对应的模板代码也相同,不同字段类型对应的模板代码不同。当终端对接口数据进行解析得到每个字段名称的字段类型,获取每个字段类型对应的模板代码。
例如,当字段类型为“number”时,该字段类型对应的模板代码可以为“@property(nonatomic,assign)int”;当字段类型为“string”时,该字段类型对应的模板代码可以为“@property(nonatomic,copy)NSString*”;当字段类型为“object”时,该字段类型对应的模板代码可以为“@property(nonatomic,strong)Model1*”。
307、终端将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。
对于终端解析得到的至少一个字段名称中的每一个字段名称,终端确定该字段名称的字段类型,根据字段类型确定对应的模板代码,将该字段名称与该模板代码进行组合,也即是将至少一个字段名称与对应的模板代码进行组合,得到接口数据对应的接口代码。
其中,将字段名称与模板代码进行组合可以包括多种方式。例如,将字段名称与模板代码的拼接得到接口代码,或者将字段名称插入模板代码的中间得到接口代码,或者将模板代码中的部分字符串替换为字段名称得到接口代码。本申请实施例对字段名称与模板代码的组合方式不做限定。
在一种可能实现方式中,接口数据中包括多个字段名称与每个字段名称的字段类型,则终端分别将每个字段名称与对应的模板代码进行组合,得到多个字段代码,终端将该多个字段代码进行组合,得到接口代码。
其中,字段名称对应的模板代码是指该字段名称的字段类型对应的模板代码,字段代码是指该字段名称对应的代码。终端对每个字段名称与对应的模板代码均做组合处理,即可得到多个字段名称对应的多个字段代码,则终端将该多个字段代码进行组合,即可得到接口数据对应的接口代码,因此该接口代码中包括多个字段名称对应的多个字段代码。
可选地,终端分别将每个字段名称拼接于对应的模板代码的末尾,得到多个字段代码。终端可以将字段名称放在对应的模板代码的末尾,然后将模板代码以及该模板代码末尾的字段名称进行拼接,得到该字段名称对应的字段代码。
例如,字段名称为“code”,该字段名称的字段类型为“number”,该字段类型对应的模板代码为“@property(nonatomic,assign)int”,则将字段名称“code”拼接于对应的模板代码“@property(nonatomic,assign)int”的末尾,得到的字段代码为“@property(nonatomic,assign)int code”。
可选地,终端得到多个字段代码后,按照多个字段名称的排列顺序,依次将多个字段名称对应的字段代码进行组合,得到接口代码。
在接口数据中多个字段名称按顺序排列,终端对接口数据进行解析处理,可以得到按顺序排列的多个字段名称,则终端将字段名称与模板代码进行组合得到多个字段名称对应的字段代码之后,按照该多个字段名称的排列顺序,将该多个字段名称对应的字段代码进行组合,得到接口代码。其中,将多个字段代码进行组合可以包括多种方式。例如,终端可以将多个字段名称对应的字段代码,按照多个字段名称的排列顺序进行拼接,得到接口代码。
在另一种可能实现方式中,接口数据中还包括每个字段名称对应的注释数据,则终端将每个字段名称、每个字段名称的字段类型对应的模板代码以及每个字段名称对应的注释数据进行组合,得到接口数据对应的接口代码。
注释数据是指对字段名称的注释、描述或者注释数据等,以便开发人员在进行查看时可以根据注释数据对字段名称进行理解。例如,当字段名称为“code”时,该字段名称对应的注释数据为“返回码(0=成功)”,该注释数据表示该字段名称“code”对应的字段为返回码,且返回码为0时成功。当字段名称为“chiefSongName”时,该字段名称对应的注释数据为“首席歌曲”,该注释数据表示该字段名称“chiefSongName”对应的字段为首席歌曲。
终端对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型、每个字段名称对应的注释数据,将每个字段名称以及对应的模板代码、对应的注释数据进行组合,得到接口数据对应的接口代码。其中,将字段名称、模板代码、注释数据进行组合可以包括多种方式。
可选地,终端先将每个字段名称与对应的模板代码进行组合得到字段代码,然后分别将每个字段名称对应的字段代码与对应的注释数据进行组合,得到每个字段名称对应的添加注释数据后的字段代码,将多个添加注释数据后的字段代码进行组合,得到接口代码。例如,终端可以将每个注释数据放在对应的字段代码的前面,将每个字段代码与字段代码前面的注释数据进行拼接得到添加注释数据后的字段代码,将多个添加注释数据后的字段代码进行拼接,得到接口代码。或者,终端可以将每个注释数据放在对应的字段代码的末尾,将每个字段代码与字段代码末尾的注释数据进行拼接得到添加注释数据后的字段代码,将多个添加注释数据后的字段代码进行拼接,得到接口代码。
例如,以上述表1所示的表格接口数据为例,则根据本申请实施例提供的方法,生成该表格接口数据对应的接口代码,该接口代码如下所示:
@interface Model0:FAModel
/**返回码(0=成功)**/
@property(nonatomic,assign)int code;
/**返回信息**/
@property(nonatomic,copy)NSString*msg;
/**没有打赏时为null**/
@property(nonatomic,strong)Model1*data;
@end
@interface Model1:FAModel
/**首席订单**/
@property(nonatomic,assign)int chiefOrderId;
/**首席歌曲**/
@property(nonatomic,copy)NSString*chiefSongName;
/**最后打赏用户名**/
@property(nonatomic,copy)NSString*chiefUserName;
/**最后打赏金额**/
@property(nonatomic,assign)int chiefRewardCoin;
/**打赏总金额**/
@property(nonatomic,assign)int songOrderTotalRewardCoin;
@end
@implementation Model0
@end
@implementation Model1
@end
308、终端在代码生成界面中显示接口代码。
当终端得到接口数据对应的接口代码之后,在代码生成界面中显示该接口代码。
可选地,终端可以将该接口代码显示在代码生成界面的接口数据的上方,或者将该接口代码显示在代码生成界面的接口数据的下方,或者将代码生成界面中的接口数据替换为接口代码。
可选地,该代码生成界面中还包括预览选项,该预览选项用于显示接口代码。终端生成接口代码之后,当基于代码生成界面检测到对该预览选项的触发操作时,在代码生成界面中显示该接口代码。
可选地,该代码生成界面中还包括编辑选项,该编辑选项用于对接口代码进行编辑。终端在代码生成界面中显示接口代码之后,当基于代码生成界面检测到对该编辑选项的触发操作时,显示该接口代码的编辑界面,则开发人员即可基于该编辑界面对接口代码进行编辑操作,如对接口代码中的字符串进行添加、删除、修改等。
可选地,该代码生成界面中还包括运行选项,该运行选项用于运行接口代码。终端在代码生成界面中显示接口代码之后,当基于代码生成界面检测到对该运行选项的触发操作时,运行该接口代码,从而实现了接口的调用。并且,开发人员可以通过接口代码的运行情况,检查接口代码是否有误,以便对接口代码进行修改等。
图5是本申请实施例提供的另一种代码生成界面的示意图,参见图5,代码生成界面中包括代码生成选项、预览选项、编辑选项、运行选项、接口的基本信息以及根据接口数据生成的接口代码。
本申请实施例提供的方法,对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型,根据每个字段类型获取对应的模板代码,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。因此可以实现根据接口数据自动生成对应的接口代码,无需人工编写,可以节约人力和时间,提高了接口代码的生成效率,并且还可以避免人工编写代码而出现代码编写错误的情况,提高了接口代码的准确率。
并且,生成接口代码之后,可以在代码生成界面中显示该接口代码。实现了将接口代码以一种可视化的方式提供给开发人员,便于开发人员对接口代码进行检查。在代码生成界面中设置编辑选项,可以方便开发人员对接口代码进行编辑,在代码生成界面中设置运行选项,可以方便开发人员根据接口代码的运行情况进一步对接口代码进行检查和编辑。
并且,将每个字段名称、每个字段名称的字段类型对应的模板代码以及每个字段名称对应的注释数据进行组合,得到接口代码。因此接口代码中还包括对字段名称的注释数据,便于开发人员根据注释数据来对接口代码进行理解。
并且,将代码生成选项设置为第一显示方式,表示该代码生成图标当前处于可触发状态;将代码生成选项设置为第二显示方式,表示该代码生成图标当前处于不可触发状态。通过区分第一显示方式和第二显示方式,以一种可视化的方式来表示代码生成图标当前的状态为可触发状态还是不可触发状态,使用户能够直观地确定代码生成图标当前的状态。
图6是本申请实施例提供的另一种代码生成方法的流程图。本申请实施例的执行主体为计算机设备,参见图6,该方法包括:
601、计算机设备获取接口数据。
该接口数据与上述图3对应的实施例中的接口数据类似,在此不再赘述。
在一种可能实现方式中,该计算机设备为接口管理服务器。接口管理服务器用于在开发应用过程中,对接口数据进行新增、修改或者维护等,可以提供接口管理服务。例如,该接口管理服务器为YAPI的服务器。其中,该接口管理服务中存储有接口数据,该接口数据可以由开发人员上传至该接口管理服务器,或者由接口管理服务从其他计算机设备中下载得到。该接口管理服务器可以直接获取预先存储的接口数据。
在另一种可能实现方式中,该计算机设备为终端。终端可以接收携带接口数据的代码生成指令,对该代码生成指令进行解析处理,得到对应的接口数据。其中,该代码生成指令指示根据接口数据生成对应的接口代码。
可选地,代码生成指令中可以携带接口数据的访问地址,终端根据该访问地址获取接口数据。例如,该访问地址可以为该接口数据对应的网页地址,该网页地址对应的网页中包括该接口数据。
602、计算机设备对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型。
603、计算机设备根据每个字段类型获取对应的模板代码。
604、计算机设备将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。
上述步骤602-604与上述实施例中的步骤305-307类似,在此不再赘述。
本申请实施例提供的方法,对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型,根据每个字段类型获取对应的模板代码,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。因此可以实现根据接口数据自动生成对应的接口代码,无需人工编写,可以节约人力和时间,提高了接口代码的生成效率,并且还可以避免人工编写代码而出现代码编写错误的情况,提高了接口代码的准确率。
图7是本申请实施例提供的另一种代码生成方法的流程图,参见图7,该方法包括:
1、点击浏览器插件图标。当用户想要根据接口数据生成接口代码时,用户点击代码生成界面中的浏览器插件图标。其中,该浏览器插件是浏览器中具有代码生成功能的插件,该浏览器插件图标即为上述实施例中所示的代码生成选项,该代码生成界面为浏览器中显示的界面。
2、判断当前的代码生成界面中是否包括接口数据。
3、如果包括接口数据,则解析该接口数据,并执行下述步骤5。
4、如果不包括接口数据,则不做处理。
5、提取接口数据中的字段名称和字段类型。终端对接口数据进行解析处理,可以得到接口数据中的至少一个字段名称以及每个字段名称的字段类型。
6、根据字段类型将字段名称进行字符串拼接得到接口代码。终端根据每个字段类型获取对应的模板代码,模板代码中包括多个字符串,将该模板代码与字段名称进行拼接即可得到接口数据对应的接口代码。
7、将接口代码显示在代码生成界面上。
图8是本申请实施例提供的一种代码生成装置的结构示意图。参见图8,该装置包括:
数据获取模块801,用于获取接口数据,接口数据包括至少一个字段名称以及每个字段名称的字段类型;
数据处理模块802,用于对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型;
模板代码获取模块803,用于根据每个字段类型获取对应的模板代码;
组合模块804,用于将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。
可选地,参见图9,数据获取模块801,包括:
指令接收单元811,用于接收携带接口数据的代码生成指令,代码生成指令指示根据接口数据生成对应的接口代码。
可选地,参见图9,组合模块804,包括:
第一组合单元814,用于分别将每个字段名称与对应的模板代码进行组合,得到多个字段代码;
第二组合单元824,用于将多个字段代码进行组合,得到接口代码。
可选地,参见图9,第一组合单元814,还用于:
分别将每个字段名称拼接于对应的模板代码的末尾,得到多个字段代码。
可选地,参见图9,第二组合单元824,还用于:
按照多个字段名称的排列顺序,依次将多个字段名称对应的字段代码进行组合,得到接口代码。
可选地,参见图9,数据获取模块801,包括:
请求发送单元821,用于通过代码生成应用,向接口管理服务器发送对接口数据的访问请求;
数据接收单元831,用于通过代码生成应用,接收接口管理服务器返回的接口数据。
可选地,参见图9,装置还包括:
界面显示模块805,用于通过代码生成应用生成代码生成界面,代码生成界面包括代码生成选项;
第一设置模块806,用于当检测到代码生成界面中包括接口数据时,将代码生成选项设置为可触发状态;
第二设置模块807,用于当检测到代码生成界面中不包括接口数据时,将代码生成选项设置为不可触发状态。
可选地,参见图9,数据获取模块801,包括:
数据获取单元841,用于从代码生成界面中获取接口数据。
可选地,参见图9,装置还包括:
代码显示模块808,用于在代码生成界面中显示接口代码。
可选地,参见图9,第一设置模块806,包括:
域名检测单元816,用于当检测到代码生成界面中包括目标域名时,确定代码生成界面中包括接口数据,目标域名用于表示接口数据所在界面的域名;
设置单元826,用于将代码生成选项设置为可触发状态。
可选地,参见图9,接口数据中还包括每个字段名称对应的注释数据,组合模块804,包括:
第三组合单元834,用于将每个字段名称、每个字段名称的字段类型对应的模板代码以及每个字段名称对应的注释数据进行组合,得到接口数据对应的接口代码。
本申请实施例提供的装置,对接口数据进行解析处理,得到至少一个字段名称以及每个字段名称的字段类型,根据每个字段类型获取对应的模板代码,将每个字段名称与每个字段名称的字段类型对应的模板代码进行组合,得到接口数据对应的接口代码。因此可以实现根据接口数据自动生成对应的接口代码,无需人工编写,可以节约人力和时间,提高了接口代码的生成效率,并且还可以避免人工编写代码而出现代码编写错误的情况,提高了接口代码的准确率。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的代码生成装置在生成代码时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将计算机设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的代码生成装置与代码生成方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图10示出了本申请一个示例性实施例提供的终端1000的结构示意图。该终端1000可以用于执行上述代码生成方法中的终端所执行的步骤。
通常,终端1000包括有:处理器1001和存储器1002。
处理器1001可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1001可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1001也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1001可以在集成有GPU(Graphics Processing Unit,图像处理的交互器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1001还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1002可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1002还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1002中的非暂态的计算机可读存储介质用于存储至少一条指令,该至少一条指令用于被处理器1001所具有以实现本申请中方法实施例提供的代码生成方法。
在一些实施例中,设备1000还可选包括有:外围设备接口1003和至少一个外围设备。处理器1001、存储器1002和外围设备接口1003之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1003相连。具体地,外围设备包括:射频电路1004、触摸显示屏1005、摄像头1006、音频电路1007、定位组件1008和电源1009中的至少一种。
外围设备接口1003可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1001和存储器1002。在一些实施例中,处理器1001、存储器1002和外围设备接口1003被集成在同一芯片或电路板上;在一些其他实施例中,处理器1001、存储器1002和外围设备接口1003中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1004用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1004通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1004将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1004包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1004可以通过至少一种无线通信协议来与其它设备进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1004还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1005用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1005是触摸显示屏时,显示屏1005还具有采集在显示屏1005的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1001进行处理。此时,显示屏1005还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1005可以为一个,设置终端1000的前面板;在另一些实施例中,显示屏1005可以为至少两个,分别设置在终端1000的不同表面或呈折叠设计;在一些实施例中,显示屏1005可以是柔性显示屏,设置在终端1000的弯曲表面上或折叠面上。甚至,显示屏1005还可以设置成非矩形的不规则图形,也即异形屏。显示屏1005可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1006用于采集图像或视频。可选地,摄像头组件1006包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端1000的前面板,后置摄像头设置在终端1000的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1006还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1007可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1001进行处理,或者输入至射频电路1004以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1000的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1001或射频电路1004的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1007还可以包括耳机插孔。
定位组件1008用于定位终端1000的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1008可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源1009用于为终端1000中的各个组件进行供电。电源1009可以是交流电、直流电、一次性电池或可充电电池。当电源1009包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1000还包括有一个或多个传感器1010。该一个或多个传感器1010包括但不限于:加速度传感器1011、陀螺仪传感器1012、压力传感器1013、指纹传感器1014、光学传感器1015以及接近传感器1016。
加速度传感器1011可以检测以终端1000建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1011可以用于检测重力加速度在三个坐标轴上的分量。处理器1001可以根据加速度传感器1011采集的重力加速度信号,控制触摸显示屏1005以横向视图或纵向视图进行用户界面的显示。加速度传感器1011还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1012可以检测终端1000的机体方向及转动角度,陀螺仪传感器1012可以与加速度传感器1011协同采集用户对终端1000的3D动作。处理器1001根据陀螺仪传感器1012采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1013可以设置在终端1000的侧边框和/或触摸显示屏1005的下层。当压力传感器1013设置在终端1000的侧边框时,可以检测用户对终端1000的握持信号,由处理器1001根据压力传感器1013采集的握持信号进行左右手识别或快捷操作。当压力传感器1013设置在触摸显示屏1005的下层时,由处理器1001根据用户对触摸显示屏1005的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1014用于采集用户的指纹,由处理器1001根据指纹传感器1414采集到的指纹识别用户的身份,或者,由指纹传感器1014根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1001授权该用户具有相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1014可以被设置终端1000的正面、背面或侧面。当终端1000上设置有物理按键或厂商Logo时,指纹传感器1014可以与物理按键或厂商标志集成在一起。
光学传感器1015用于采集环境光强度。在一个实施例中,处理器1001可以根据光学传感器1015采集的环境光强度,控制触摸显示屏1005的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1005的显示亮度;当环境光强度较低时,调低触摸显示屏1005的显示亮度。在另一个实施例中,处理器1001还可以根据光学传感器1015采集的环境光强度,动态调整摄像头组件1006的拍摄参数。
接近传感器1016,也称距离传感器,通常设置在终端1000的前面板。接近传感器1016用于采集用户与终端1000的正面之间的距离。在一个实施例中,当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变小时,由处理器1001控制触摸显示屏1005从亮屏状态切换为息屏状态;当接近传感器1016检测到用户与终端1000的正面之间的距离逐渐变大时,由处理器1001控制触摸显示屏1005从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图10中示出的结构并不构成对终端1000的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图11是本申请实施例提供的一种服务器的结构示意图,该服务器1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(Central ProcessingUnits,CPU)1101和一个或一个以上的存储器1102,其中,所述存储器1102中存储有至少一条指令,所述至少一条指令由所述处理器1101加载并执行以实现上述各个方法实施例提供的方法。当然,该服务器还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该服务器还可以包括其他用于实现设备功能的部件,在此不做赘述。
服务器1100可以用于执行上述代码生成方法中接口管理服务器所执行的步骤。
本申请实施例还提供了一种用于生成代码的计算机设备,该计算机设备包括处理器和存储器,存储器中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的代码生成方法中所具有的操作。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的代码生成方法中所具有的操作。
本申请实施例还提供了一种计算机程序,该计算机程序包括至少一条指令,该至少一条指令由处理器加载并执行,以实现上述实施例的代码生成方法中所具有的操作。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请实施例的可选实施例,并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (22)
1.一种代码生成方法,其特征在于,所述方法包括:
获取接口数据,所述接口数据包括至少一个字段名称以及每个字段名称的字段类型;
对所述接口数据进行解析处理,得到所述至少一个字段名称以及所述每个字段名称的字段类型;
根据每个字段类型获取对应的模板代码;
将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码;
所述获取接口数据,包括:
通过代码生成应用,向接口管理服务器发送对所述接口数据的访问请求,所述代码生成应用为包括具有代码生成功能的浏览器插件的浏览器;
通过所述代码生成应用,接收所述接口管理服务器返回的所述接口数据。
2.根据权利要求1所述的方法,其特征在于,所述获取接口数据,包括:
接收携带所述接口数据的代码生成指令,所述代码生成指令指示根据所述接口数据生成对应的接口代码。
3.根据权利要求1所述的方法,其特征在于,所述将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码,包括:
分别将所述每个字段名称与对应的模板代码进行组合,得到多个字段代码;
将所述多个字段代码进行组合,得到所述接口代码。
4.根据权利要求3所述的方法,其特征在于,所述分别将所述每个字段名称与对应的模板代码进行组合,得到多个字段代码,包括:
分别将所述每个字段名称拼接于对应的模板代码的末尾,得到所述多个字段代码。
5.根据权利要求3所述的方法,其特征在于,所述将所述多个字段代码进行组合,得到所述接口代码,包括:
按照所述多个字段名称的排列顺序,依次将所述多个字段名称对应的字段代码进行组合,得到所述接口代码。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过所述代码生成应用生成代码生成界面,所述代码生成界面包括代码生成选项;
当检测到所述代码生成界面中包括接口数据时,将所述代码生成选项设置为可触发状态;
当检测到所述代码生成界面中不包括接口数据时,将所述代码生成选项设置为不可触发状态。
7.根据权利要求6所述的方法,其特征在于,所述获取接口数据,包括:
从所述代码生成界面中获取所述接口数据。
8.根据权利要求6所述的方法,其特征在于,所述将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码之后还包括:
在所述代码生成界面中显示所述接口代码。
9.根据权利要求6所述的方法,其特征在于,所述当检测到所述代码生成界面中包括接口数据时,将所述代码生成选项设置为可触发状态,包括:
当检测到所述代码生成界面中包括目标域名时,确定所述代码生成界面中包括接口数据,所述目标域名用于表示接口数据所在界面的域名;
将所述代码生成选项设置为可触发状态。
10.根据权利要求1所述的方法,其特征在于,所述接口数据中还包括每个字段名称对应的注释数据,所述将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码,包括:
将每个字段名称、所述每个字段名称的字段类型对应的模板代码以及所述每个字段名称对应的注释数据进行组合,得到所述接口数据对应的接口代码。
11.一种代码生成装置,其特征在于,所述装置包括:
数据获取模块,用于获取接口数据,所述接口数据包括至少一个字段名称以及每个字段名称的字段类型;
数据处理模块,用于对所述接口数据进行解析处理,得到所述至少一个字段名称以及所述每个字段名称的字段类型;
模板代码获取模块,用于根据每个字段类型获取对应的模板代码;
组合模块,用于将每个字段名称与所述每个字段名称的字段类型对应的模板代码进行组合,得到所述接口数据对应的接口代码;
所述数据获取模块,包括:
请求发送单元,用于通过代码生成应用,向接口管理服务器发送对所述接口数据的访问请求,所述代码生成应用为包括具有代码生成功能的浏览器插件的浏览器;
数据接收单元,用于通过所述代码生成应用,接收所述接口管理服务器返回的所述接口数据。
12.根据权利要求11所述的装置,其特征在于,所述数据获取模块,包括:
指令接收单元,用于接收携带所述接口数据的代码生成指令,所述代码生成指令指示根据所述接口数据生成对应的接口代码。
13.根据权利要求11所述的装置,其特征在于,所述组合模块,包括:
第一组合单元,用于分别将所述每个字段名称与对应的模板代码进行组合,得到多个字段代码;
第二组合单元,用于将所述多个字段代码进行组合,得到所述接口代码。
14.根据权利要求13所述的装置,其特征在于,所述第一组合单元,还用于:
分别将所述每个字段名称拼接于对应的模板代码的末尾,得到所述多个字段代码。
15.根据权利要求13所述的装置,其特征在于,所述第二组合单元,还用于:
按照所述多个字段名称的排列顺序,依次将所述多个字段名称对应的字段代码进行组合,得到所述接口代码。
16.根据权利要求11所述的装置,其特征在于,所述装置还包括:
界面显示模块,用于通过所述代码生成应用生成代码生成界面,所述代码生成界面包括代码生成选项;
第一设置模块,用于当检测到所述代码生成界面中包括接口数据时,将所述代码生成选项设置为可触发状态;
第二设置模块,用于当检测到所述代码生成界面中不包括接口数据时,将所述代码生成选项设置为不可触发状态。
17.根据权利要求16所述的装置,其特征在于,所述数据获取模块,包括:
数据获取单元,用于从所述代码生成界面中获取所述接口数据。
18.根据权利要求16所述的装置,其特征在于,所述装置还包括:
代码显示模块,用于在所述代码生成界面中显示所述接口代码。
19.根据权利要求16所述的装置,其特征在于,所述第一设置模块,包括:
域名检测单元,用于当检测到所述代码生成界面中包括目标域名时,确定所述代码生成界面中包括接口数据,所述目标域名用于表示接口数据所在界面的域名;
设置单元,用于将所述代码生成选项设置为可触发状态。
20.根据权利要求11所述的装置,其特征在于,所述接口数据中还包括每个字段名称对应的注释数据,所述组合模块,包括:
第三组合单元,用于将每个字段名称、所述每个字段名称的字段类型对应的模板代码以及所述每个字段名称对应的注释数据进行组合,得到所述接口数据对应的接口代码。
21.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述至少一条指令由所述处理器加载并执行,以实现如权利要求1至10任一所述的代码生成方法。
22.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令,所述至少一条指令由处理器加载并执行,以实现如权利要求1至10任一所述的代码生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010246338.0A CN111459466B (zh) | 2020-03-31 | 2020-03-31 | 代码生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010246338.0A CN111459466B (zh) | 2020-03-31 | 2020-03-31 | 代码生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111459466A CN111459466A (zh) | 2020-07-28 |
CN111459466B true CN111459466B (zh) | 2023-10-20 |
Family
ID=71682385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010246338.0A Active CN111459466B (zh) | 2020-03-31 | 2020-03-31 | 代码生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111459466B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112764751B (zh) * | 2021-01-27 | 2024-05-24 | 深圳市酷开网络科技股份有限公司 | 接口生成方法和装置、接口请求方法和装置及存储介质 |
CN112947911A (zh) * | 2021-04-26 | 2021-06-11 | 平安普惠企业管理有限公司 | 接口脚本生成方法、装置、设备及存储介质 |
CN113407169A (zh) * | 2021-06-29 | 2021-09-17 | 北京字节跳动网络技术有限公司 | 一种软件开发方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107168702A (zh) * | 2017-05-10 | 2017-09-15 | 苏州奇松软件有限公司 | 一种App、小程序和Web接口定义和代码生成方法 |
CN108268253A (zh) * | 2017-05-05 | 2018-07-10 | 平安科技(深圳)有限公司 | 接口代码生成方法及终端设备 |
CN109086046A (zh) * | 2018-08-02 | 2018-12-25 | 中国建设银行股份有限公司 | 一种基于接口规范文档的前端代码自动生成方法及系统 |
CN110515608A (zh) * | 2019-08-30 | 2019-11-29 | 网易(杭州)网络有限公司 | 一种接口代码的生成方法及装置、电子设备、存储介质 |
CN110806862A (zh) * | 2019-10-12 | 2020-02-18 | 上海巍驰信息技术有限公司 | 一种基于配置模型自动生成接口程序代码的系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10503488B2 (en) * | 2017-04-18 | 2019-12-10 | Ncr Corporation | Updating a payment processing system to conform with a standard |
-
2020
- 2020-03-31 CN CN202010246338.0A patent/CN111459466B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268253A (zh) * | 2017-05-05 | 2018-07-10 | 平安科技(深圳)有限公司 | 接口代码生成方法及终端设备 |
CN107168702A (zh) * | 2017-05-10 | 2017-09-15 | 苏州奇松软件有限公司 | 一种App、小程序和Web接口定义和代码生成方法 |
CN109086046A (zh) * | 2018-08-02 | 2018-12-25 | 中国建设银行股份有限公司 | 一种基于接口规范文档的前端代码自动生成方法及系统 |
CN110515608A (zh) * | 2019-08-30 | 2019-11-29 | 网易(杭州)网络有限公司 | 一种接口代码的生成方法及装置、电子设备、存储介质 |
CN110806862A (zh) * | 2019-10-12 | 2020-02-18 | 上海巍驰信息技术有限公司 | 一种基于配置模型自动生成接口程序代码的系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111459466A (zh) | 2020-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107885533B (zh) | 管理组件代码的方法及装置 | |
CN111459466B (zh) | 代码生成方法、装置、设备及存储介质 | |
CN108959361B (zh) | 表单管理的方法和装置 | |
CN110109608B (zh) | 文本显示方法、装置、终端及存储介质 | |
CN110321126B (zh) | 生成页面代码的方法和装置 | |
CN112000331A (zh) | 页面渲染方法、装置、电子设备及存储介质 | |
CN112116690B (zh) | 视频特效生成方法、装置及终端 | |
CN113204298A (zh) | 显示发布进度的方法、装置、电子设备及存储介质 | |
CN111949680A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN110543350A (zh) | 一种生成页面组件的方法及装置 | |
CN112749362A (zh) | 控件创建方法、装置、设备及存储介质 | |
CN111125602B (zh) | 页面构建方法、装置、设备和存储介质 | |
CN111737100A (zh) | 数据获取方法、装置、设备及存储介质 | |
CN113467663B (zh) | 界面配置方法、装置、计算机设备及介质 | |
JP7236551B2 (ja) | キャラクタ推薦方法、キャラクタ推薦装置、コンピュータ装置およびプログラム | |
CN110569064B (zh) | 接口标识生成方法、装置、设备及存储介质 | |
CN114168369A (zh) | 日志显示方法、装置、设备及存储介质 | |
CN109107163B (zh) | 模拟按键检测方法、装置、计算机设备及存储介质 | |
CN112230910A (zh) | 嵌入型程序的页面生成方法、装置、设备及存储介质 | |
CN111580892A (zh) | 一种业务组件调用的方法、装置、终端和存储介质 | |
CN113051485B (zh) | 群组搜索方法、装置、终端及存储介质 | |
CN111294320B (zh) | 数据转换的方法和装置 | |
CN109597951B (zh) | 信息分享方法、装置、终端及存储介质 | |
CN113268234A (zh) | 页面生成方法、装置、终端和存储介质 | |
CN113204724A (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 |