spring get方法传参数组在swagger中测试避坑 同名参数获取失败 数组参数获取失败 数组参数只能获取到一个值

1、问题描述

        使用swagger+knife4j做测试,发送get请求,其中有get参数同名的数组写法,【name】

/kgoa-service-common/common/wps/v3/3rd/users?name=1&name=2


        

2、swagger发送出去的实际样子

3、问题核心

        swagger自行把同名参数【去重】了!!!!!

        然后你会死活发现不了,直到你打开F12查看请求。

4、原因

        因为swagger本来就是调试工具了,所以【开发者】下意识的就不会看F12面板。

5、解决方案

        该接口使用postman测试就行。

Swagger 3.0 中,你可以通过`@ApiExample`注解来添加API的示例请求,并使用`@ApiParam`或`@ApiModelProperty`来设置全局参数。下面是如何为登录API添加一个示例并包含获取到的 token 的步骤: 1. 首先,在你需要展示示例的 API 定义上,添加 `@ApiOperation` 和 `@ApiExamples` 注解,例如: ```java import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import io.swagger.annotations.ApiExample; @Api(value = "Authentication", description = "API for user authentication") public class AuthenticationController { @PostMapping("/login") @ApiOperation( value = "Login", notes = "Logs a user into the system and returns an access token.", response = String.class, code = 200, message = "User logged in successfully" ) @ApiExample( value = "Example Login Request with Token", httpHeaders = { @ApiResponse.Header(name = "Authorization", value = "Bearer <your_token>") } ) public ResponseEntity<String> login(@RequestBody LoginRequest loginRequest) { // Your authentication logic here... } } ``` 2. 使用`@ApiParam` 或 `@ApiModelProperty` 来添加全局参数。在这个例子中,我们设置了 `Authorization` 头部参数来表示 token,可以放在 `@ApiExample` 的 `httpHeaders` 属性中: ```java @ApiExample({ "value": "Example Login Request with Token", "httpHeaders": { @ApiResponse.Header(name = "Authorization", value = "Bearer {access_token}") }, "parameters": [ @ApiParam(name = "access_token", value = "The access token obtained after successful login", required = true) ] }) ``` 这里的 `{access_token}` 是占位符,实际使用会替换为实际获取到的 token。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值