[发明专利]可视化的RPC API调试方法、装置、介质和设备有效
申请号: | 201910612968.2 | 申请日: | 2019-07-09 |
公开(公告)号: | CN110489323B | 公开(公告)日: | 2023-04-25 |
发明(设计)人: | 邬亮 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京国昊天诚知识产权代理有限公司 11315 | 代理人: | 马瑞 |
地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 可视化 rpc api 调试 方法 装置 介质 设备 | ||
1.一种可视化的RPC API调试方法,其特征在于,包括:
获取上传的IDL文件并读取所述IDL文件内容;
调用RPC框架的编译器解析所述IDL文件内容并生成API库代码;
调用API封装函数生成模块根据所述IDL文件内容生成封装函数,所述封装函数的入参包含请求数据和用户配置数据,所述封装函数的函数体包括请求数据合成部分、客户端实例化部分、返回数据处理部分和API调用部分;其中,所述请求数据合成部分调用所述API库代码把所述请求数据合成RPC数据;所述客户端实例化部分根据所述用户配置数据实例化RPC客户端;所述返回数据处理部分对返回的数据进行序列化或反序列化处理;所述API调用部分把所述RPC数据作为实参,把所述返回数据处理部分作为回调函数,调用RPC客户端实例的成员函数;
获取从数据输入界面输入的数据;
整合所述API库代码、封装函数以及输入的数据进行API调试,API调试由API调用模块通过引入所述RPC框架的运行时库、所述API库代码以及输入的数据调用所述封装函数完成,所述运行时库包含实现数据序列化或反序列化的核心代码;
返回调试结果数据。
2.根据权利要求1所述的方法,其特征在于,所述获取上传的IDL文件并读取所述IDL文件内容,包括:
获取上传的远程或本地的IDL文件,所述IDL文件包括thrift文件或pb文件;
读取所述IDL文件内容。
3.根据权利要求2所述的方法,其特征在于,所述调用RPC框架的编译器解析所述IDL文件内容并生成API库代码,包括:
当IDL文件为thrift文件时,调用Thrift框架编译器解析所述thrift文件内容并生成API库代码;
当IDL文件为pb文件时,调用Protocol Buffers编译器解析所述pb文件内容并生成API库代码。
4.根据权利要求3所述的方法,其特征在于,所述调用API封装函数生成模块根据所述IDL文件内容生成封装函数,包括:
通过API封装函数生成模块将所述IDL文件解析成抽象语法树;
根据所述抽象语法树生成API封装函数。
5.根据权利要求1所述的方法,其特征在于,所述获取从数据输入界面输入的数据,包括:
获取从数据输入界面输入的所述用户配置数据和请求数据,所述请求数据支持JSON和YAML数据格式。
6.根据权利要求1所述的方法,其特征在于,所述返回调试结果数据,包括:
返回调试结果数据至数据显示模块进行显示,其中,所述数据显示模块支持把所述返回调试结果数据转换成JSON格式的数据进行显示。
7.一种可视化的RPC API调试装置,其特征在于,包括:
第一获取单元,用于获取上传的IDL文件并读取所述IDL文件内容;
第一调用单元,用于调用RPC框架的编译器解析所述IDL文件内容并生成API库代码;
第二调用单元,用于调用API封装函数生成模块根据所述IDL文件内容生成封装函数,所述封装函数的入参包含请求数据和用户配置数据,所述封装函数的函数体包括请求数据合成部分、客户端实例化部分、返回数据处理部分和API调用部分;其中,所述请求数据合成部分调用所述API库代码把所述请求数据合成RPC数据;所述客户端实例化部分根据所述用户配置数据实例化RPC客户端;所述返回数据处理部分对返回的数据进行序列化或反序列化处理;所述API调用部分把所述RPC数据作为实参,把所述返回数据处理部分作为回调函数,调用RPC客户端实例的成员函数;
第二获取单元,用于获取从数据输入界面输入的数据;
整合单元,用于整合所述API库代码、封装函数以及输入的数据进行API调试,API调试由API调用模块通过引入所述RPC框架的运行时库、所述API库代码以及输入的数据调用所述封装函数完成,所述运行时库包含实现数据序列化或反序列化的核心代码;
返回单元,用于返回调试结果数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910612968.2/1.html,转载请声明来源钻瓜专利网。