CN107967143B - 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 - Google Patents
获取客户端应用程序源代码的更新指示信息的方法、装置和系统 Download PDFInfo
- Publication number
- CN107967143B CN107967143B CN201711337309.XA CN201711337309A CN107967143B CN 107967143 B CN107967143 B CN 107967143B CN 201711337309 A CN201711337309 A CN 201711337309A CN 107967143 B CN107967143 B CN 107967143B
- Authority
- CN
- China
- Prior art keywords
- api
- api document
- file
- document
- target server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 abstract description 11
- 230000008859 change Effects 0.000 abstract description 8
- 239000008186 active pharmaceutical agent Substances 0.000 abstract 9
- 238000011161 development Methods 0.000 description 27
- 238000007726 management method Methods 0.000 description 20
- 230000011664 signaling Effects 0.000 description 8
- 238000013500 data storage Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 208000033748 Device issues Diseases 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- 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/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例提供一种获取客户端应用程序源代码的更新指示信息的方法、装置和系统。本发明实施例的获取客户端应用程序源代码的更新指示信息的方法包括获取目标服务对应的各API各自的定义文件;提取所有上述定义文件包括的参数信息,得到目标服务对应的API文档;根据用户输入的将该压缩文件发布至预设位置的指令,将API文档发送至目标服务器,以使目标服务器将API文档存储在API文档内容列表中,API文档内容列表用于存储该应用程序能够实现的所有服务对应的API文档。本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法、装置和系统用,客户端应用程序开发用户可以及时的根据API文档获知API的变化,节约了沟通成本。
Description
技术领域
本发明涉及通信工程技术,尤其涉及一种获取客户端应用程序源代码的更新指示信息的方法、装置和系统。
背景技术
服务提供者(比如服务器,也可称为后端)只负责根据服务消费者(比如客户端等,也可称为前端)的请求,对服务消费者的请求进行处理,返回处理后的数据给服务消费者,并不关心服务消费者接收到处理后的数据后的展现;而服务消费者拿到处理后的数据后,组织该数据进行展现,并不关心请求的处理过程;因此,服务消费者和服务提供者之间变得相对独立并且松耦合。
服务消费者和服务提供者之间的交互通过应用程序编程接口(ApplicationProgramming Interface,简称API)来协作,这个API往往是JSON格式的RESTFul API。由于前端应用程序的开发与后端应用程序的开发是相分离的,若API发生了变化,后端应用程序的开发者需要和前端应用程序的开发者进行沟通,告知前端应用程序的开发者API发生了哪些变化,以使前端应用程序的开发者根据变化后的API更新前应用程序的源代码,但是这种沟通不够及时且效率低。
因此,如何使得前端应用程序的开发者及时获知API的变化,以便更新前端应用程序的源代码,以保证服务消费者和服务提供者之间的交互顺利进行,是急需解决的问题。
发明内容
本发明实施例提供一种获取客户端应用程序源代码的更新指示信息的方法、装置和系统,以克服现有技术中前端应用程序的开发者不能及时获知API发生变化的技术问题。
第一方面,本发明实施例提供一种获取客户端应用程序源代码的更新指示信息的方法,应用于第一终端设备,包括:
获取各应用程序编程接口API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;
提取所有所述定义文件包括的参数信息,得到所述服务对应的API文档,所述API文档用于提供客户端应用程序源代码的更新指示信息;
在所述第一终端设备得到包括所有所述API的源代码的压缩文件后,根据用户输入的将所述压缩文件发布至预设位置处的指令,将所述API文档发送至目标服务器,以使目标服务器将所述API文档存储在API文档内容列表中,所述API文档内容列表用于存储所述服务器端应用程序能够实现的所有服务对应的API文档。
在一种可能的设计中,所述根据用户输入的将所述压缩文件发布至预设位置处的指令,将所述API文档发送至目标服务器,包括:
根据用户输入的将所述压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的指令,获取所述目标服务器的地址;
根据所述目标服务器的地址,将所述API文档发送至目标服务器。
在一种可能的设计中,所述根据用户输入的将所述压缩文件发布至预设位置处的指令,将所述API文档发送至目标服务器,包括:
根据用户输入的将所述压缩文件发布至第一服务器的指令,获取所述目标服务器的地址;
根据所述目标服务器的地址,将所述API文档发送至目标服务器。
第二方面,本发明实施例提供一种获取客户端应用程序源代码的更新指示信息的方法,应用于第二终端设备,包括:
接收用户输入的目标服务对应的目标API文档查看指令;所述目标API文档查看指令用于指示第二终端设备向目标服务器发送目标API文档查看请求;所述目标服务为相应的服务器端应用程序能够实现的所有服务中的一种服务,每种所述服务与一个API文档对应;
根据所述目标API文档查看指令,向目标服务器发送目标API文档查看请求;以使目标服务器根据目标API文档查看请求,从API文档内容列表中获取目标API文档,并将目标API文档发送至所述第二终端设备;所述API文档内容列表用于存储所述服务器端应用程序能够实现的所有服务对应的API文档;
接收所述目标服务器发送的所述目标API文档;
向用户显示所述目标API文档,所述目标API文档用于提供客户端应用程序源代码的更新指示信息。
在一种可能的设计中,所述接收所述目标服务器发送的所述目标API文档,包括:
接收所述目标服务器发送的所述目标API文档;
采用与所述目标API文档的数据存储格式对应的解析方式,解析所述目标API文档,得到解析后的目标API文档;
则向用户显示所述目标API文档,包括:
向用户显示解析后的目标API文档。
第三方面,本发明实施例提供一种获取客户端应用程序源代码的更新指示信息的装置,包括:
定义文件获取模块,用于获取各应用程序编程接口API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API,所述定义文件包括所述API的参数信息;
API文档获取模块,用于提取所有所述定义文件包括的参数信息,得到所述服务对应的API文档,所述API文档用于提供客户端应用程序源代码的更新指示信息;
发送模块,用于在得到包括所有所述API的源代码的压缩文件后,根据用户输入的将所述压缩文件发布至预设位置处的指令,将所述API文档发送至目标服务器,以使目标服务器将所述API文档存储在API文档内容列表中,所述API文档内容列表用于存储所述服务器端应用程序能够实现的所有服务对应的API文档。
第四方面,本发明实施例提供一种获取客户端应用程序源代码的更新指示信息的装置,包括:
接收模块,用于接收用户输入的目标服务对应的目标API文档查看指令;所述目标API文档查看指令用于指示第二终端设备向目标服务器发送目标API文档查看请求;所述目标服务为相应的服务器端应用程序能够实现的所有服务中的一种服务,每种所述服务与一个API文档对应;
发送模块,用于根据所述目标API文档内容查看指令,向目标服务器发送目标API文档查看请求;以使目标服务器根据目标API文档查看请求,从API文档内容列表中获取目标API文档,并将目标API文档发送至所述第二终端设备;所述API文档内容列表用于存储所述服务器端应用程序能够实现的所有服务对应的API文档;
所述接收模块,还用于接收所述目标服务器发送的所述目标API文档;
显示模块,用于向用户显示所述目标API文档,所述目标API文档用于提供客户端应用程序源代码的更新指示信息。
第五方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,在所述计算机程序被处理器执行时,执行第一方面任一可能的设计中所述的方法。
第六方面,本发明实施例提供一种电子设备,包括:包括处理器和存储器,其中,
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行第一方面任一可能的设计中所述的方法。
第七方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,在所述计算机程序被处理器执行时,执行第二方面任一可能的设计中所述的方法。
第八方面,本发明实施例提供一种电子设备,包括:包括处理器和存储器,其中,
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行第二方面任一可能的设计中所述的方法。
本发明实施例中,在得到各API的源代码的压缩文件后,第一终端设备根据用户输入的将该压缩文件发布至预设位置的指令,在将该压缩文件发布至预设位置同时,就将API文档发送至目标服务器,使得客户端应用程序开发用户在API源代码的压缩文件发布的同时,可在第一时间通过第二终端设备获取API文档,以判断API是否发生变化,即客户端应用程序开发用户可以及时的获知API的变化;且无需前后端应用程序开发用户沟通,节约了沟通成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的系统架构图;
图2为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图一;
图3为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图二;
图4为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图三;
图5为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图四;
图6为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的装置的结构示意图一;
图7为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的装置的结构示意图二。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的系统架构图;参见图1,本实施例提供的系统架构包括目标服务器11、第一服务器12、第一终端设备13和第二终端设备14。第一终端设备13和第二终端设备14例如均可以为电脑等终端设备;第一服务器12用于存储API源代码的压缩文件,相关项目的其他开发用户可从第一服务12器获取API源代码的压缩文件,目标服务器11为存储API文档的服务器。
第一终端设备13根据API的定义文件,获取应用程序能够实现的任意一种服务对应的API文档,任意一种服务均包括多个子服务,在得到各API的源代码的压缩文件后,根据用户输入的将各API的源代码的压缩文件发布至预设位置的指令,将API文档发送至目标服务器,以使目标服务器将该API文档存储在API文档内容列表中,API文档内容列表用于存储应用程序能够实现的所有服务对应的API文档。第二终端设备14可以从目标服务器中获取相应的API文档,并向用户显示获取的API文档,以使用户在根据API文档获取相应服务包括的各子服务的API的变化后,更新相应的客户端应用程序源代码。
由于在得到各API的源代码的压缩文件后,第一终端设备13根据用户输入的将该压缩文件发布至预设位置的指令,在将该压缩文件发布至预设位置同时,就将API文档发送至目标服务器,使得客户端应用程序开发用户在API源代码的压缩文件发布的同时,就可通过第二终端设备获取API文档,以判断API是否发生变化,因此,客户端应用程序开发用户可以及时的获知API的变化;且无需前后端开发用户沟通,节约了沟通成本。
下面对本发明的获取客户端应用程序源代码的更新指示信息的方法进行详细的说明。首先,通过图2~图4所示实施例,对API文档内容列表的生成过程进行详细说明。
图2为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图一。参见图2,本实施例的方法包括:
步骤S201、第一终端设备获取各API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;
步骤S202、第一终端设备提取所有上述定义文件包括的参数信息,得到该种服务对应的API文档,API文档用于提供客户端应用程序源代码的更新指示信息;
步骤S203、在第一终端设备得到所有上述API的源代码的压缩文件后,第一终端设备接收用户输入的将该压缩文件发布至预设位置的指令;
步骤S204、第一终端设备根据该指令,将API文档发送至目标服务器;
步骤S205、目标服务器将API文档存储在API文档内容列表中,API文档内容列表用于存储服务器端应用程序能够实现的所有服务对应的API文档。
具体地,目前对服务器端应用程序的开发,一般将服务器端应用程序所能够实现的服务划分成多种服务,每种服务的源代码由专门的开发用户采用各自的终端设备进行开发。每种服务包括多个子服务,比如“微信”服务器端应用程序所能够实现的“管理好友”该种服务,该种服务包括的子服务例如可以为“删除好友”子服务、“添加好友”子服务、“拉黑好友”子服务等。其中,每个子服务对应一个API。
本实施例中第一终端设备根据服务器端应用程序所能够实现的每种服务包括的子服务各自对应的API的定义文件,为每种服务生成一个API文档,将各种服务各自对应的API文档发送至目标服务器生成API文档内容列表,供客户端应用程序开发用户查看。
对于步骤S201,各API各自的定义文件可为通过Swagger定义的文件。其中,Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。Swagger的目标是对REST API定义一个标准的和语言无关的接口,可让人和计算机无需访问源码、文档或网络流量监测就可以发现和理解服务的能力。Swagger规范定义了一组描述一个API所需的文件格式,类似于描述Web服务的WSDL。通过Swagger进行REST API的正确定义,用户可以理解远程服务并使用最少实现逻辑与远程服务进行交互。与为底层编程所实现的接口类似,Swagger消除了调用服务时可能会有的猜测。
API的参数信息至少包括客户端向服务器发送请求时传入参数、服务器处理完该请求后的传出参数、子服务对应的统一资源标识符URL。
因此,API的定义文件中的参数信息也至少包括客户端向服务器发送请求时传入参数、服务器处理完该请求后的传出参数、子服务对应的统一资源标识符URL。
对于每种服务,该服务包括的各子服务各自对应的API的定义文件的内容由开发用户通过第一终端设备输入,第一终端设备获取各API各自的定义文件。
对于步骤S202,第一终端设备提取各API各自的定义文件包括的参数信息,得到API文档。API文档用于提供客户端应用程序源代码的更新指示信息。
具体地,若各API各自的定义文件为通过Swagger定义的文件,那么定义文件可为JavaScript对象表示法(JavaScript Object Notation,简称JSON)格式的定义文件,也可为采用YAML语法的定义文件。
若定义文件为JSON格式的定义文件,则直接提取各API各自的定义文件的参数信息,得到一个API文档;若定义文件为采用YAML语法的定义文件,则先将定义文件解析成JSON格式的定义文件,再提取各API各自的定义文件的参数信息。也就是所以API定义文件中包括的参数信息和API文档中包括的参数信息相同,只是一个是集中存储,一个是分散存储,且数据存储格式可能不相同。
本领域技术人员可以理解的是,在提取一个API定义文件的参数信息之前,应确定该定义文件的开头部分是否有引用标识,若是,则提取时需要同时提取其引用的定义文件的信息。
由于API文档中包括了API的参数信息,因此,API文档可以提供客户端应用程序源代码的更新指示信息。比如,API文档在被客户端应用程序开发用户获取后,判断API文档中包括的API的参数信息是否相对于之前的参数信息发生了变化,若发生了变化,则根据API变化后的参数信息更新客户端应用程序源代码。
对于步骤S203~步骤204,开发用户根据API的定义文件,通过第一终端设备进行API的开发,即编写API的源代码,编写并测试完成后,第一终端设备打包该种服务对应的所有API的源代码,得到包括该种服务对应的所有API的源代码的压缩文件。
在得到包括该种服务对应的所有API的源代码的压缩文件后,需要进行发布,以使本地安装或者开发其它种类的服务的用户可以查看该压缩文件。第一终端设备接收用户输入的将该压缩文件发布至预设位置的指令,第一终端设备根据该指令在将该压缩文件发布至预设位置的同时,将步骤S202得到API文档发送至目标服务器。
其中,开发用户可采用maven项目管理工具进行API的开发项目中的管理,比如管理项目周期的完成。Maven项目管理工具提供相应的插件完成开发项目周期中的各流程:清理、编译、测试、打包、安装和部署;maven的插件以Java归档文件(Java Archive,简称JAR文件)项目体现。此时,在得到包括该种服务对应的所有API的源代码的压缩文件后,用户可通过maven项目管理工具的界面输入install命令,该install命令即为用户输入的将该压缩文件发布至预设位置的指令,预设位置为第一终端设备中存放maven项目管理工具下载的所有JAR文件的位置。此时,在得到包括该种服务对应的所有API的源代码的压缩文件后,用户还可通过maven项目管理工具的界面输入deploy命令,该deploy命令即为用户输入的将该压缩文件发布至预设位置的指令,预设位置为私服(公司内部的服务器),即图1中的第一服务器。
对于步骤S205,目标服务器接收第一终端设备发送的API文档,将API文档存储在API文档内容列表中,API文档内容列表用于存储该应用程序能够实现的所有服务对应的API文档。
具体地,每种服务对应一个API文档,每个API文档都有其对应的项目ID作为标识。服务器在接收到某种服务对应的API文档后,均会将其存储至API文档内容列表,也就是说API文档内容列表中存储中多个API文档。这样在客户端开发用户通过第二终端设备请求查看相应服务的API文档时,目标服务器根据查看请求,从API文档内容列表中获取目标API文档,并将目标API文档发送至第二终端设备。
由于本实施例中,在得到各API的源代码的压缩文件后,第一终端设备根据用户输入的将该压缩文件发布至预设位置的指令,在将该压缩文件发布至预设位置同时,就将API文档发送至目标服务器,使得客户端应用程序开发用户在API源代码的压缩文件发布的同时,就可在第一时间通过第二终端设备获取API文档,以判断API是否发生变化,且无需前后端开发用户沟通,因此,本实施例的获取客户端应用程序源代码的更新指示信息的方法客户端应用程序开发用户可以及时的获知API的变化,节约了沟通成本。
本实施例的获取客户端应用程序源代码的更新指示信息的方法,包括第一终端设备获取各API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;第一终端设备提取所有上述定义文件包括的参数信息,得到该种服务对应的API文档,API文档用于提供客户端应用程序源代码的更新指示信息;在第一终端设备得到所有上述API的源代码的压缩文件后,第一终端设备接收用户输入的将该压缩文件发布至预设位置的指令;第一终端设备根据该指令,将API文档发送至目标服务器;目标服务器将API文档存储在API文档内容列表中,API文档内容列表用于存储该应用程序能够实现的所有服务对应的API文档。因此,本实施例的获取客户端应用程序源代码的更新指示信息的方法,客户端应用程序开发用户可以及时的获知API的变化,节约了沟通成本。
下面采用具体的实施例对上一实施例进行详细说明。
图3为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图二。参见图3,本实施例的方法包括:
步骤S301、第一终端设备获取各API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;
步骤S302、第一终端设备提取所有上述定义文件包括的参数信息,得到该种服务对应的API文档,API文档用于提供客户端应用程序源代码的更新指示信息;
步骤S303、在第一终端设备得到所有上述API的源代码的压缩文件后,第一终端设备接收用户输入的将该压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的指令;
步骤S304、第一终端设备根据该指令,获取目标服务器的地址;
步骤S305、第一终端设备根据目标服务器的地址,将API文档发送至目标服务器;
步骤S306、目标服务器将API文档存储在API文档内容列表中,API文档内容列表用于存储服务器端应用程序能够实现的所有服务对应的API文档。
具体地,对于步骤S301~步骤S302,参照上一实施例中的步骤S201~步骤S202,本实施例不再赘述。
对于步骤S303,开发用户根据API的定义文件,通过第一终端设备进行API的开发,即编写API的源代码,编写并测试完成后,第一终端设备打包该种服务对应的所有API的源代码,得到包括该种服务对应的所有API的源代码的压缩文件。
在得到包括该种服务对应的所有API的源代码的压缩文件后,需要进行发布。第一终端设备接收用户输入的将该压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的指令,第一终端设备接收该指令。
其中,用户可通过maven项目管理工具的界面输入install命令,该install命令即为用户输入的将该压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件(也可称为JAR文件)的位置处的指令。
对于步骤S304~步骤S305、第一终端设备根据该指令,获取目标服务器的地址;第一终端设备根据目标服务器的地址,将API文档发送至目标服务器,将上述压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处。
其中,目标服务器的地址存储在项目管理工具中,第一终端设备可从项目管理工具中获取目标服务器的地址。
对于步骤S306与上一实施例中的步骤S205相同,本实施例中不再赘述。
本实施例中通过第一终端设备根据用户输入的将上述压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的指令,将上述压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的同时,将API文档发送至目标服务器,可以使得客户端应用程序开发用户及时的获知API的变化。
图4为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图三。参见图4,本实施例的方法包括:
步骤S401、第一终端设备获取各API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;
步骤S402、第一终端设备提取所有上述定义文件包括的参数信息,得到该种服务对应的API文档,API文档用于提供客户端应用程序源代码的更新指示信息;
步骤S403、在第一终端设备得到所有上述API的源代码的压缩文件后,第一终端设备接收用户输入的将该压缩文件发布至第一服务器的指令;
步骤S404、第一终端设备根据该指令,获取目标服务器的地址;
步骤S405、第一终端设备根据目标服务器的地址,将API文档发送至目标服务器;
步骤S406、目标服务器将API文档存储在API文档内容列表中,API文档内容列表用于存储服务器端应用程序能够实现的所有服务对应的API文档。
具体地,对于步骤S401~步骤S402,参照图2所示的实施例中的步骤S201~步骤S202,本实施例不再赘述。
对于步骤S303,开发用户根据API的定义文件,通过第一终端设备进行API的开发,即编写API的源代码,编写并测试完成后,第一终端设备打包该种服务对应的所有API的源代码,得到包括该种服务对应的所有API的源代码的压缩文件。
在得到包括该种服务对应的所有API的源代码的压缩文件后,需要进行发布。第一终端设备接收用户输入的将该压缩文件发布至第一服务器的指令,第一终端设备接收该指令。
其中,用户可通过maven项目管理工具的界面输入deploy命令,该deploy命令即为用户输入的将该压缩文件发布至第一服务器的指令。其中,第一服务器也称为私服,即公司内部的服务器。
对于步骤S404~步骤S405、第一终端设备根据该指令,获取目标服务器的地址;第一终端设备根据目标服务器的地址,将API文档发送至目标服务器,将上述压缩文件发布至第一服务器。
其中,目标服务器的地址存储在项目管理工具中,第一终端设备可从项目管理工具中获取目标服务器的地址。
对于步骤S406与图2所示的实施例中的步骤S205相同,本实施例中不再赘述。
本实施例中通过第一终端设备根据用户输入的将上述压缩文件发布至第一服务器的指令,将上述压缩文件发布至第一服务器的同时,将API文档发送至目标服务器,可以使得客户端应用程序开发用户及时的获知API的变化。
其次,通过图5所示的实施例,对客户端应用程序开发用户获取上述目标服务器中的API文档内容列表中的API文档以更新客户端应用程序源代码的过程进行详细说明。
图5为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的方法的信令流程图四。参见图5,本实施例的方法包括:
步骤S501、第二终端设备接收用户输入的目标API文档查看指令;目标API文档查看指令用于指示第二终端设备向目标服务器发送目标API文档查看请求;
步骤S502、第二终端设备根据目标API文档内容查看指令,向目标服务器发送目标API文档查看请求;
步骤S503、目标服务器根据目标API文档查看请求,从API文档内容列表中获取目标API文档;
步骤S504、目标服务器将目标API文档发送至第二终端设备;
步骤S505、第二终端设备采用与目标API文档的信息的存储格式对应的解析方式,解析目标API文档,得到解析后的目标API文档;
步骤S506、第二终端设备向用户显示解析后的目标API文档,目标API文档用于提供客户端应用程序源代码的更新指示信息。
具体地,本实施例中的用户为客户端应用程序开发用户。
用户通过第二终端设备的显示界面输入目标API文档查看指令,比如,第二终端的显示界面显示有相应的服务器端应用程序所能实现的每种服务对应的API文档图标,用户通过点击相应的图标输入目标API文档查看指令。
第二终端设备根据目标API文档内容查看指令,向目标服务器发送目标API文档查看请求。其中,目标API文档查看请求中包括目标API文档的项目标识,即项目ID。
目标服务器接收目标API文档查看请求,并根据目标API文档查看请求包括的项目标识,从API文档内容列表中获取目标API文档。
目标服务器将目标API文档发送至第二终端设备,第二终端设备接收目标API文档,并采用与目标API文档的数据存储格式对应的解析方式,解析目标API文档,得到解析后的目标API文档;第二终端设备向用户显示解析后的目标API文档,目标API文档用于提供用户更新客户端应用程序源代码的依据。
具体地,比如API文档的数据存储格式为JSON数据存储格式,则采用JSON数据存储格式对应的解析方法,解析目标API文档,得到解析后的目标API文档。
客户端应用程序开发用户通过查看解析后的目标API文档,根据目标API文档中包括的当前API的参数信息,判断相应服务的当前API相对于之前的API有没有发生变化,比如客户端向服务器发送请求后,需要传入的参数有没有发生变化,若是,则根据目标API文档中变化后的参数信息更新相关的客户端应用程序源代码。
本实施例中由于所有API文档均被存储在目标服务器的API文档内容列表中,且API文档是在API源代码的压缩文件发布的同时,就上传至目标服务器的,用户可及时的通过第二终端设备获取想要查看的API文档,从而判断API是否发生变化;并且无需和服务器端应用程序开发用户进行沟通,节约了沟通成本。
图6为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的装置的结构示意图一,如图6所示,本实施例的设备可以包括:定义文件获取模块61、API文档获取模块62和发送模块63;
定义文件获取模块61,用于获取各API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;API文档获取模块62,用于提取所有上述定义文件包括的参数信息,得到相应服务对应的API文档,API文档用于提供客户端应用程序源代码的更新指示信息;发送模块63,用于在得到包括所有上述API的源代码的压缩文件后,根据用户输入的将压缩文件发布至预设位置处的指令,将上述API文档发送至目标服务器,以使目标服务器将上述API文档存储在API文档内容列表中,API文档内容列表用于存储服务器端应用程序能够实现的所有服务对应的API文档。
发送模块63具体用于根据用户输入的将所述压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的指令,获取所述目标服务器的地址;根据所述目标服务器的地址,将所述API文档发送至目标服务器;或者,
发送模块63具体用于根据用户输入的将所述压缩文件发布至第一服务器的指令,获取所述目标服务器的地址;根据所述目标服务器的地址,将所述API文档发送至目标服务器。
本实施例的装置,可以用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明实施例提供的获取客户端应用程序源代码的更新指示信息的装置的结构示意图二,如图7所示,本实施例的设备可以包括接收模块71、发送模块72和显示模块73。
接收模块71,用于接收用户输入的目标服务对应的目标API文档查看指令;所述目标API文档查看指令用于指示第二终端设备向目标服务器发送目标API文档查看请求;目标服务为相应的服务器端应用程序能够实现的所有服务中的一种服务,每种服务与一个API文档对应;发送模块72,用于根据目标API文档内容查看指令,向目标服务器发送目标API文档查看请求;以使目标服务器根据目标API文档查看请求,从API文档内容列表中获取目标API文档,并将目标API文档发送至第二终端设备;API文档内容列表用于存储服务器端应用程序能够实现的所有服务对应的API文档。
接收模块71,还用于接收目标服务器发送的目标API文档;显示模块73,用于向用户显示目标API文档,目标API文档用于提供客户端应用程序源代码的更新指示信息。
接收模块71具体用于,接收目标服务器发送的目标API文档;采用与目标API文档的数据存储格式对应的解析方式,解析目标API文档,得到解析后的目标API文档;显示模块具体用于,向用户显示解析后的目标API文档。
本实施例的装置,可以用于执行上述所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,在所述计算机程序被处理器执行时,执行上述图2~图4所示的方法实施例中第一终端设备对应的方法。
本发明实施例还提供一种电子设备,包括处理器和存储器,其中,
所述存储器用于存储程序指令;
所述处理器用于读取所述存储器中的程序指令,并根据所述存储器中的程序指令执行上述图2~图4所示的方法实施例中第一终端设备对应的方法。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,在所述计算机程序被处理器执行时,执行上述图5所示的方法实施例中第二终端设备所对应的方法。
本发明实施例还提供一种电子设备,包括处理器和存储器,其中,
所述存储器用于存储程序指令;
所述处理器用于读取所述存储器中的程序指令,并根据所述存储器中的程序指令执行上述图5所示的方法实施例中第二终端设备所对应的方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (4)
1.一种获取客户端应用程序源代码的更新指示信息的方法,应用于第一终端设备,其特征在于,包括:
获取各应用程序编程接口API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;
提取所有所述定义文件包括的参数信息,得到所述服务对应的API文档;所述API文档用于提供客户端应用程序源代码的更新指示信息;
在所述第一终端设备得到包括所有所述API的源代码的压缩文件后,根据用户输入的将所述压缩文件发布至预设位置处的指令,将所述API文档发送至目标服务器,以使目标服务器将所述API文档存储在API文档内容列表中,所述API文档内容列表用于存储所述服务器端应用程序能够实现的所有服务对应的API文档;
若所述定义文件为通过Swagger定义的文件,那么所述定义文件为JSON格式的定义文件,或者采用YAML语法的定义文件;
所述提取所有所述定义文件包括的参数信息,得到所述服务对应的API文档包括:
若所述定义文件为JSON格式的定义文件,则直接提取所述JSON格式的定义文件的参数信息,得到所述服务对应的文档;
若所述定义文件为采用YAML语法的定义文件,则先将所述采用YAML语法的定义文件解析成所述JSON格式的定义文件,再提取参数信息,得到所述服务对应的文档;
所述根据用户输入的将所述压缩文件发布至预设位置处的指令,将所述API文档发送至目标服务器,包括:
根据用户输入的将所述压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的指令,获取所述目标服务器的地址;
根据所述目标服务器的地址,将所述API文档发送至目标服务器;
或者,根据用户输入的将所述压缩文件发布至第一服务器的指令,获取所述目标服务器的地址;
根据所述目标服务器的地址,将所述API文档发送至目标服务器。
2.一种获取客户端应用程序源代码的更新指示信息的装置,其特征在于,包括:
定义文件获取模块,用于获取各应用程序编程接口API各自的定义文件;各API为服务器端应用程序能够实现的任意一种服务包括的各子服务各自对应的API;
API文档获取模块,用于提取所有所述定义文件包括的参数信息,得到所述服务对应的API文档;所述API文档用于提供客户端应用程序源代码的更新指示信息;
发送模块,用于在得到包括所有所述API的源代码的压缩文件后,根据用户输入的将所述压缩文件发布至预设位置处的指令,将所述API文档发送至目标服务器,以使目标服务器将所述API文档存储在API文档内容列表中,所述API文档内容列表用于存储所述服务器端应用程序能够实现的所有服务对应的API文档;
若所述定义文件为通过Swagger定义的文件,那么所述定义文件为JSON格式的定义文件,或者采用YAML语法的定义文件;
所述API文档获取模块具体用于若所述定义文件为JSON格式的定义文件,则直接提取所述JSON格式的定义文件的参数信息,得到所述服务对应的文档;
若所述定义文件为采用YAML语法的定义文件,则先将所述采用YAML语法的定义文件解析成所述JSON格式的定义文件,再提取参数信息,得到所述服务对应的文档;
所述发送模块,具体用于根据用户输入的将所述压缩文件发布至第一终端设备中存放项目管理工具下载的Java归档文件的位置处的指令,获取所述目标服务器的地址;
根据所述目标服务器的地址,将所述API文档发送至目标服务器;
或者,根据用户输入的将所述压缩文件发布至第一服务器的指令,获取所述目标服务器的地址;
根据所述目标服务器的地址,将所述API文档发送至目标服务器。
3.一种计算机可读存储介质,其特征在于,计算机可读存储介质上存储有计算机程序,在所述计算机程序被处理器执行时,执行权利要求1所述的方法。
4.一种电子设备,其特征在于,包括处理器和存储器,其中,
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行权利要求1所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711337309.XA CN107967143B (zh) | 2017-12-14 | 2017-12-14 | 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711337309.XA CN107967143B (zh) | 2017-12-14 | 2017-12-14 | 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107967143A CN107967143A (zh) | 2018-04-27 |
CN107967143B true CN107967143B (zh) | 2021-07-09 |
Family
ID=61995351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711337309.XA Active CN107967143B (zh) | 2017-12-14 | 2017-12-14 | 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107967143B (zh) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108647088A (zh) * | 2018-03-13 | 2018-10-12 | 广东欧珀移动通信有限公司 | 资源配置方法、装置、终端及存储介质 |
CN108776641A (zh) * | 2018-05-28 | 2018-11-09 | 北京五八信息技术有限公司 | 应用程序的热词测试方法、装置及电子设备 |
CN109254954B (zh) * | 2018-09-13 | 2020-06-09 | 政采云有限公司 | 文件处理方法和装置、计算设备及存储介质 |
CN109829287A (zh) * | 2018-11-20 | 2019-05-31 | 新疆福禄网络科技有限公司 | Api接口权限访问方法、设备、存储介质及装置 |
CN109710301A (zh) * | 2018-11-30 | 2019-05-03 | 福建天泉教育科技有限公司 | 一种自动比较接口文档差异的方法及终端 |
CN109710531B (zh) * | 2018-12-29 | 2022-07-05 | 奇安信科技集团股份有限公司 | 应用程序的审计方法、装置、系统、电子设备及存储介质 |
CN110244952A (zh) * | 2019-05-09 | 2019-09-17 | 恩亿科(北京)数据科技有限公司 | 应用程序编程接口文档的管理方法和计算机可读存储介质 |
CN110704030A (zh) * | 2019-09-26 | 2020-01-17 | 北京达佳互联信息技术有限公司 | 接口配置信息生成方法、装置、电子设备及存储介质 |
CN111010438B (zh) * | 2019-12-13 | 2022-11-11 | 北京达佳互联信息技术有限公司 | 远程过程调用方法、装置、服务器及存储介质 |
CN111399825A (zh) * | 2020-03-17 | 2020-07-10 | 四川研宝科技有限公司 | 一种基于api文档的api接口开发管理方法及系统 |
CN112035568A (zh) * | 2020-09-04 | 2020-12-04 | 银川安翰互联网医院有限公司 | 数据列表的展示方法、客户端、服务器及系统 |
CN113296752A (zh) * | 2021-05-25 | 2021-08-24 | 平安养老保险股份有限公司 | 生成api文档的方法、系统、设备及存储介质 |
CN113656357B (zh) * | 2021-09-01 | 2024-07-16 | 京东科技信息技术有限公司 | 文件管理方法、装置、系统及存储介质 |
CN114327443A (zh) * | 2021-12-30 | 2022-04-12 | 百富计算机技术(深圳)有限公司 | 数据处理方法、系统、终端设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101976188A (zh) * | 2010-05-26 | 2011-02-16 | 天津大学 | 面向AJAX协议的OpenApi数据自动加载系统 |
CN107193570A (zh) * | 2017-05-31 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种自动生成api文档的方法及系统 |
CN107391130A (zh) * | 2017-07-07 | 2017-11-24 | 千寻位置网络有限公司 | Api自动管理和sdk、文档自动生成方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9794339B2 (en) * | 2013-09-12 | 2017-10-17 | Data Accelerator Ltd. | Accelerated remote operation system API requests |
-
2017
- 2017-12-14 CN CN201711337309.XA patent/CN107967143B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101976188A (zh) * | 2010-05-26 | 2011-02-16 | 天津大学 | 面向AJAX协议的OpenApi数据自动加载系统 |
CN107193570A (zh) * | 2017-05-31 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种自动生成api文档的方法及系统 |
CN107391130A (zh) * | 2017-07-07 | 2017-11-24 | 千寻位置网络有限公司 | Api自动管理和sdk、文档自动生成方法 |
Non-Patent Citations (1)
Title |
---|
maven打包 install package deploy区别;青鱼入云;《https://blog.csdn.net/u011305680/article/details/51699471》;20160617;第一页第一行至第一页第七行 * |
Also Published As
Publication number | Publication date |
---|---|
CN107967143A (zh) | 2018-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107967143B (zh) | 获取客户端应用程序源代码的更新指示信息的方法、装置和系统 | |
CN110310034B (zh) | 一种应用于SaaS的服务编排、业务流程处理方法和装置 | |
CN105718540B (zh) | 数据加载方法和装置 | |
US20150135197A1 (en) | Accessing business object resources for a machine-to-machine communication environment | |
CN102362261A (zh) | 通过网络浏览器输入内容至应用程序 | |
CN111913884A (zh) | 分布式测试方法、装置、设备、系统和可读存储介质 | |
CN112631590B (zh) | 组件库生成方法、装置、电子设备和计算机可读介质 | |
US20170220218A1 (en) | Automatic Generation of Regular Expression Based on Log Line Data | |
CN113821352A (zh) | 一种远程服务的调用方法和装置 | |
JP2007310596A (ja) | サービス提供装置、コンピュータプログラム及び記録媒体 | |
CN110958462A (zh) | 直播活动页面显示方法、装置、存储介质及直播系统 | |
CN107426588B (zh) | 一种获取电视机配置信息方法、系统及存储装置 | |
KR20130065777A (ko) | 인스펙터 스크립트 삽입을 통한 웹 콘텐츠 공유 장치 및 방법 | |
CN113076294A (zh) | 一种信息分享方法和装置 | |
US9736222B1 (en) | System, method, and computer program for automatically exposing application programming interfaces (APIS) associated with an application server to one or more client devices | |
CN111787041A (zh) | 用于处理数据的方法和装置 | |
CN111382039A (zh) | 上报用户行为事件的方法、装置、电子设备及存储介质 | |
CN106095886B (zh) | 一种数据处理方法及其装置 | |
CN101964742A (zh) | 一种网络开放能力使用方法、系统和装置 | |
CN111176948A (zh) | 个性化业务指标的监控方法及系统 | |
CN106933449B (zh) | 图标处理方法和装置 | |
CN113590419A (zh) | 一种函数管理方法和装置 | |
KR20160082732A (ko) | 에스브이지 파일 포맷을 이용한 컴포넌트 기반의 동적 이미지 표시 시스템 및 방법 | |
CN112306324B (zh) | 信息处理方法、装置、设备和介质 | |
CN114253520B (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 |