写点什么

详解 Apifox:批量添加接口请求 Body 参数的方法

作者:Apifox
  • 2024-07-17
    广东
  • 本文字数:2536 字

    阅读完需:约 8 分钟

详解 Apifox:批量添加接口请求 Body 参数的方法

在使用 Apifox 进行 API 设计时,你可能会遇到需要添加大量请求参数的情况。想象一下,如果一个接口需要几十甚至上百个参数,若要在接口的「修改文档」里一个个手动添加这些参数,那未免也太麻烦了,耗时且易出错。这时候,要是能一次性把一大堆参数都添加进去,那该多方便!



本文就来介绍一些在接口中批量添加请求参数的方法,话不多说,直接进入正题。

方法一 使用批量编辑功能

当 Body 参数类型为 form-data 和 x-www-form-urlencoded 时,可以使用「批量编辑」功能来添加请求参数。


在参数列表的右上角,你可以看到一个「批量编辑」按钮,点击这个按钮,界面会弹出一个文本编辑框,你可以在其中批量输入参数。



编辑框中填入的参数要求是 CSV 格式的,比如 form-data 类型的参数要求的格式为:参数名,类型,必需,示例值,Content-Type,说明。其中,英文逗号之间的内容可以为空,填写的 CSV 格式的数据可以利用 AI 来整理,以减少出错。例如:


email,string,false,user@gmail.com,text/plain,用户的电子邮箱地址password,string,false,********,text/plain,用户的密码
复制代码



编辑完毕后点击「确定」按钮,即可生成对应的请求参数。


方法二 通过已有格式生成参数

当 Body 参数类型为 JSON 和 XML 时,可以根据具体的格式 (如 JSON、XML 等) 粘贴内容并生成。


在参数列表的右上角,你可以看到一个「通过 JSON 等生成」按钮,点击这个按钮,界面会弹出一个文本编辑框,你可以在其中选择一种方法来批量添加 Body 参数。


1、使用 JSON 批量添加

可在编辑框中粘贴或手动输入接口的 JSON 对象,JSON 中可以添加注释,这些注释会被识别为参数的「说明」或「中文名」,这两种注释可以自由选择。除此之外,还可以选择覆盖模式、命名风格,同时可以将写入的 JSON 对象保存为请求示例。例如:


{    "region_id": "82","email": "b.wawjn@qq.com", // 邮箱"sales_channel_id": "12","customer_id": "98","country_code": "70", // 国家/地区代码"context": {"ip": "::1","user_agent": "Chrome"},// 其它更多......}
复制代码


输入的 JSON 数据在「确定」之前可以预览。



编辑完毕后点击「确定」按钮,即可生成对应的请求参数。



如果开启了「同时保存为示例」开关,也会生成请求示例。


2、使用 XML 批量添加

可在编辑框中粘贴或手动输入你的 XML 数据,包括所有需要的参数,编辑完毕后点击「确定」按钮即可生成相应的请求参数。例如:


<order><region_id>82</region_id><email>b.wawjn@qq.com</email><sales_channel_id>12</sales_channel_id><customer_id>98</customer_id><country_code>70</country_code><context><ip>::1</ip><user_agent>Chrome</user_agent></context><!-- 其它更多...... --></order>
复制代码


3、从数据库导入

如果选择从数据库导入,可以根据提示连接数据库并选择需要的数据表进行添加,数据表中的字段注释可以作为「说明」或者「中文名」来写入。



除了连接数据库外,还可以通过输入 SQL 建表语句 (DDL) 来生成请求参数 (当前仅支持 MySQL) ,例如:


CREATE TABLE `carts` (`id` int NOT NULL AUTO_INCREMENT,`region_id` varchar(10) DEFAULT NULL,`email` varchar(255) DEFAULT NULL,`sales_channel_id` varchar(10) DEFAULT NULL,`customer_id` varchar(10) DEFAULT NULL,`country_code` varchar(10) DEFAULT NULLPRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
复制代码


方法三 添加常用参数/数据模型

可以在 Apifox 中创建和使用预定义的参数模板,这样在创建类似接口时可以复用这些参数模板,最典型的就是添加「常用参数」和「数据模型」。

1、添加常用参数

在项目左侧导航栏中,选择「项目设置」,然后找到并点击「常用参数」选项,你可以在这里添加一些经常用到的参数。



当在接口中需要使用「常用参数」时,点击参数输入框即可自动弹出「常用参数」选择面板,从面板中选择你预先定义的参数即可快速填入。同样的,你也可以在这里添加新的常用参数。



选择相应的参数后,会自动将「中文名」和「标签」等内容填充到相应的输入项中。


2、添加数据模型

在左侧导航栏中,找到「数据模型」选项,点击「新建数据模型」按钮,输入模型的名称和描述,根据你的需求,添加字段并定义每个字段的类型、示例值和说明。



「数据模型」的参数也可以通过 JSON、JSON Schema 等方式生成,具体方法可参考上文的第二小节。



当在接口的请求或响应中需要使用数据模型时,可点击对应的参数类型 (比如 object) ,在弹出的列表项中选择「引用模型」。



从列表中选择预先定义的数据模型,参数就会自动填充到接口中。



如果需要新增或修改某些参数,可以在对应的「数据模型」中进行修改,或者解除关联,当解除关联之后,请求参数就不再依赖于通用的数据模型,而是独立存在,专属于当前接口。


方法四 使用 cURL 导入

在 Apifox 中,可以cURL 命令直接导入,从而快速设置请求参数,特别是某些第三方平台的开放接口,他们通常会提供一个 cURL 命令来供你去测试,比如微信支付 API。



这时候你就可以把给出的 cURL 命令复制下来,然后直接粘贴到新建接口的地址栏内即可,Apifox 会自动解析 cURL 命令,并生成相应的请求参数,你可以查看和编辑这些参数以满足你的需求。



也可以在项目中点击左侧搜索框旁边的 + 号按钮,然后选择「导入 cURL」选项。



在弹出的对话框中,粘贴你复制的 cURL 命令,点击「确定」。



这时候生成的是一个「快捷请求」,你可以直接调试或者将其保存为接口。



保存为接口后,其中的 JSON 请求体会自动处理成接口文档的数据结构。


方法五 其它方式导入

除了上述常用的方式添加请求 Body 参数,还可以通过直接导入接口的方法来实现批量添加,包括从 Swagger/OpenAPI 文件导入、从 IDEA 插件导入和通过开放 API 导入等。具体可以参考这篇最佳实践:《之前使用 Swagger 来管理 API,如何迁移到 Apifox?》,该文详细介绍了上述提到的三种导入接口的方法,具体的就不再重复赘述。


本文介绍了几种在接口中批量添加请求参数的方法。比如可以使用批量编辑功能,编辑 CSV 格式的数据;也可以通过 JSON 或 XML 格式生成参数;还可以从数据库导入或使用预定义的参数模板,或者通过将 cURL 命令导入生成请求参数。方法多样,按需选择即可。

用户头像

Apifox

关注

Apifox 2022-05-17 加入

Apifox 是 API 文档、API 调试、API Mock、API 自动化测试一体化平台。Apifox = Postman + Swagger + Mock + JMeter

评论

发布
暂无评论
详解 Apifox:批量添加接口请求 Body 参数的方法_程序员_Apifox_InfoQ写作社区