swagger如何测试List类型参数
使用swagger 时,往往会用到类似下面这样的注解
@ApiImplicitParam(name = "id", value = "主键", dataType = "int", paramType = "query")
网上说这里的dataType 类型有String / int两种,其余的都是无用的。
但是如果需要传递的参数是List类型,应该怎么办?
首先直接在浏览器中输入网址,传递参数(xxx?idList=1,2,3)来测试,是没有问题的
在swagger中如果直接使用int,List<Integer> 这样的参数,会导致swagger无法测试接口,如下:
@ApiImplicitParam(name = "idList", value = "id列表", required = true, dataType = "int", paramType = "query")
后来我的一个复杂的做法是:把List的所有值传一个String类型的参数,用中括号包起来,最后再解析。形如 xxx?idList=[1,2,3] ,可以实现效果,但是比较麻烦
再后来突然发现一个很简单的解决办法
那就是去掉@ApiImplicitParam 注解(注:我的swagger 版本是2.8.0,)
比如:
@ApiOperation("批量查询课程信息")
public Result listXxxByIdList(@RequestParam(value = "idList") List<Long> idList) {...}
这样以后,测试的时候,就可以添加、删除List参数了,这个参数的类型是array[], 如下图:

可能是因为后来的swagger版本能够自动识别方法中的参数了,这样做的缺点只是没有中文描述而已
当然如果非要加上中文描述也是可以的,那就是使用 @ApiParam 注解,如下:
@ApiOperation("批量查询课程信息")
public Result listXxxByIdList(@RequestParam(value = "idList") @ApiParam(value = "id列表") List<Long> idList) {...}
原创文章,欢迎转载,转载请注明出处!
swagger如何测试List类型参数的更多相关文章
- Swagger如何测试Date类型参数
问题 Swagger测试时,参数直接输入日期格式化后的类型,会报参数日期转换错误 :ConversionFailedException 解决 网上说在参数上添加注解 @DateTimeFormat(p ...
- ASP.NET WebAPI使用Swagger生成测试文档
ASP.NET WebAPI使用Swagger生成测试文档 SwaggerUI是一个简单的Restful API测试和文档工具.简单.漂亮.易用(官方demo).通过读取JSON配置显示API .项目 ...
- surging如何使用swagger 组件测试业务模块
1.前言 微服务架构概念的提出已经有非常长一段时间了,但在近期几年却开始频繁地出现,大家都着手升级成微服务架构,使用着各种技术,大家认为框架有服务治理就是微服务,实现单一协议的服务调用,微服务虽然没有 ...
- Swagger ui测试中的验证 apikey
Swagger ui测试中的验证 apikey 我们使用swagger 用来呈现webapi的接口,除了可以看到接口的说明和参数说明,还可以进行测试.但是我们的接口通常是有验证的,不是随便就能调用的, ...
- ASP.NET WebAPI 生成帮助文档与使用Swagger服务测试
帮助HELP 要实现如WCF中的Help帮助文档,Web API 2 中已经支持很方便的实现了这一特性 http://www.asp.net/web-api/overview/creating-we ...
- ABP 用swagger UI测试API报401无权限访问问题
问题描述: 当我们用swagger UI对Web API 进行测试时报401错误 我们点开GET /api/services/app/Role/GetAll,输入参数 点击Try it out!按钮, ...
- Swagger UI 传入对象类型参数
Swagger要传送对象作为参数,只需添加@ModelAttribute或@RequestBody @RestController @RequestMapping("/api/json/re ...
- Swagger+IdentityServer4测试授权验证
1.Bearer授权操作,添加如下代码 services.AddSwaggerGen(options => { options.AddSecurityDefinition("Beare ...
- ASP.NET WebAPI 测试文档 (Swagger)
ASP.NET WebAPI使用Swagger生成测试文档 SwaggerUI是一个简单的Restful API测试和文档工具.简单.漂亮.易用(官方demo).通过读取JSON配置显示API .项目 ...
随机推荐
- Java 自动装箱与拆箱(Autoboxing and unboxing)
什么是自动装箱拆箱 基本数据类型的自动装箱(autoboxing).拆箱(unboxing)是自J2SE 5.0开始提供的功能. 一般我们要创建一个类的对象实例的时候,我们会这样: Class a = ...
- H5 70-清除浮动方式五
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- ajax成功后XML 解析错误:格式不佳
就是Ajax发送请求后,意图回显数据时会出现这个错误,貌似chrome浏览器不会报用火狐能看到: 可能的原因有两个,就是后台应该返回一个json格式的字符串,但是你返回的是浏览器看不懂的,也就是返回格 ...
- echarts x轴 增加滚动条
charts x轴 增加滚动条 在option 配置项中添加 [ dataZoom 中配置 ] 设置x轴滚动条 效果图: 动态拖动 以下参考代码 dataZoom配置 官网写法 option = { ...
- 数据快速批量添加到Elasticsearch
如何把数据快速批量添加到Elasticsearch中 问题来源 最近新做一个项目,有部分搜索比较频繁的数据,而且量级比较大,预计一两年时间很可能达到100G,项目要求不要存在数据库中,最终出来有两个方 ...
- 解决远程连接mysql很慢的方法(网络正常)
最近用mysql命令行或者JDBC远程连接mysql速度很慢,而且远大于ping时间.上网搜了一下,解决方案如下: 在/etc/mysql/my.cnf文件的[mysqld]部分加入:skip-nam ...
- java 工具
JClassLib 4.2 发布了,该版本支持 Java 7 和 Java 8 的类文件属性查看. JClassLib不但是一个字节码阅读器而且还包含一个类库允许开发者读取,修改,写入Java Cla ...
- Java 获取当前日期的四种方法
//1 通过Date类来获取当前时间,通过SimpleDateFormat来设置时间格式 SimpleDateFormat dateFormat = new SimpleDateFormat(&quo ...
- jvm 虚拟机内存模型
来源:https://blog.csdn.net/A_zhenzhen/article/details/77917991?locationNum=8&fps=1 https://blog ...
- [转帖]Windows平台卸载Oracle的办法
1.首先打开服务:选中此电脑->点击右键->选择管理->选择服务和应用程序->服务 在右边查看并停止以 oracle开头的服务(选中正在运行的以oracle开头的服务-> ...