内容纲要
问题背景
Midgard 目前需要手动配置请求/返回参数,在数据结构比较复杂的情况下,使用了返回参数的“一键映射”功能,容易出现如图的情况,api执行成功,但结果均为空
本文基于这种场景,介绍一种最简化配置sql模式参数的方式
工具需求
支持以json格式导出结果集的ddl工具,例如waterdrop
操作步骤
-
获取示例数据
编写需求的业务SQL,并将其中的参数替换为某条实际存在的数据,在ddl工具中执行
-
导出结果集
将单条结果以json格式导出为文件,如果能选择编码,则以UTF-8最佳,避免乱码问题
-
解析sql
解析sql并按需编辑别名与默认值
-
配置原始出参
对照表格的列信息,手动编辑原始出参,添加需要返回的列
其中列名需要保证准确,别名可以按需编写,此案例中删减到3列信息
-
修改json文件
编辑步骤2导出的结果集文件,只保留json部分
json中也只保留步骤3配置的列
原始结果集:
删减后的json:
-
配置请求参数
直接在页面上一键映射即可,会根据sql语句生成入参,按需调整类型、是否必填、默认值
-
配置返回参数
返回参数一键映射的类型并不一定准确,这里配置为自动解析模式,将步骤4修改好的json内容填入,点击 解析
再次点击“出参映射”模块的 自动映射,将对应关系配置好即可(此处的映射对象的列名,为步骤3配置的别名)
-
发布测试
发布后在api测试中直接调试即可