【技术实现步骤摘要】
一种生成IDL文件的方法、装置、介质和电子设备
本公开涉及计算机
,具体而言,涉及一种生成IDL文件的方法、装置、介质和电子设备。
技术介绍
现在的网络应用变得越来越复杂,一般通过功能分层的架构方式和职能拆解的分工方式来提升网络应用开发的效率。网络应用开发一般分为客户端开发和服务端开发。客服端和服务端通过应用接口进行对接。在理想的开发过程中,客户端和服务端开发者首先要协商并确定应用接口的信息,然后形成接口描述文档,最后根据接口描述文档进行开发和对接。接口描述语言(英文全称InterfaceDescriptionLanguage,简称IDL)是后端的远程过程调用协议(英文全称RemoteProcedureCallProtocol,简称RPC)框架广泛使用的接口描述方式。具有独立于编程语言、简洁易懂等优点。但是,由于IDL是为RPC接口设计的,不能完整地描述HTTP接口。需要通过标注的方法在IDL上扩展HTTP接口信息,比如HTTP方法,数据在HTTP请求中的位置等,来描述HTTP接口。相比Swagger和YApi ...
【技术保护点】
1.一种生成IDL文件的方法,其特征在于,包括:/n获取路由文件;/n分析每个路由文件,获取每个请求接口函数的路由信息;其中,所述路由信息包括与所述请求接口函数相关联的处理函数文件的路径信息和处理函数名;/n基于所述处理函数文件的路径信息获取对应的处理函数文件;/n分析每个处理函数文件,获取请求数据和设置响应数据的框架内置请求操作函数,以及每个请求接口函数对应的一组请求数据类型和响应数据类型;/n基于所述路由信息、所述请求接口函数对应的所述请求数据类型和所述响应数据类型生成第一文件;其中,所述第一文件是由接口描述语言撰写。/n
【技术特征摘要】
1.一种生成IDL文件的方法,其特征在于,包括:
获取路由文件;
分析每个路由文件,获取每个请求接口函数的路由信息;其中,所述路由信息包括与所述请求接口函数相关联的处理函数文件的路径信息和处理函数名;
基于所述处理函数文件的路径信息获取对应的处理函数文件;
分析每个处理函数文件,获取请求数据和设置响应数据的框架内置请求操作函数,以及每个请求接口函数对应的一组请求数据类型和响应数据类型;
基于所述路由信息、所述请求接口函数对应的所述请求数据类型和所述响应数据类型生成第一文件;其中,所述第一文件是由接口描述语言撰写。
2.根据权利要求1所述的方法,其特征在于,所述分析每个路由文件,获取每个请求接口函数的路由信息,包括:
基于第一语法分析模型分析每个路由文件,并生成第一抽象语法树;
根据每个请求接口函数分别分析所述第一抽象语法树,获取对应的路由信息。
3.根据权利要求1所述的方法,其特征在于,所述分析每个处理函数文件,获取请求数据和设置响应数据的框架内置请求操作函数,以及每个请求接口函数对应的一组请求数据类型和响应数据类型,包括:
基于第二语法分析模型分析每个处理函数文件,生成第二抽象语法树;
基于每个框架内置请求操作函数遍历所述第二抽象语法树,获取对应的第二抽象语法子树;其中,所述第二抽象语法子树包括请求获取代码和响应设置代码;所述请求获取代码是获取请求数据的golang代码;所述响应设置代码是设置响应数据的golang代码;
分别分析每个请求接口函数对应的一组所述请求代码和所述响应代码,获取对应的请求数据类型和响应数据类型。
4.根据权利要求3所述的方法,其特征在于,所述请求数据类型还包括所述请求数据类型依赖的数据类型;
所述响应数据类型还包括所述响应数据类型依赖的数据类型。
5.根据权利要求1所述的方法,其特征在于,所述基于所述路由信息、所述框架内置请求操作函数对...
【专利技术属性】
技术研发人员:邬亮,
申请(专利权)人:北京字节跳动网络技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。