Swagger 新增 和 更新操作 接口 Execute 无响应 查询 删除操作 参数字段下面是ref 提示required field is not provided

创建 更新 接口  一直 在 LOADING

 

查询删除 接口

参数 输入框 爆红 

 

 

创建 更新 解决方式 

错误的写法

    @ApiOperation(value = "创建用户基本信息", httpMethod = "POST")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "UserDTO", value = "用户信息", required = true, dataType = "UserSelfBaseCatalogDTO"),
    })
    @PostMapping("/create-one")
    ResultData createOne(@RequestBody @Validated(User.Create.class)UserDTO userDTO) {
        return userService.createOne(userDTO);
    }

正确的写法

    @ApiOperation(value = "创建用户基本信息", httpMethod = "POST")
    @ApiImplicitParams(value = {
            @ApiImplicitParam(name = "userDTO", value = "用户信息", required = true, dataType = "UserSelfBaseCatalogDTO"),
    })
    @PostMapping("/create-one")
    ResultData createOne(@RequestBody @Validated(User.Create.class)UserDTO userDTO) {
        return userService.createOne(userDTO);
    }

原因就是  @ApiImplicitParam 的 name 属性  要跟参数一致。 更新同理

删除查询解决方式

原因是  @ApiImplicitParams 中的  dataType 改为 写错了   改为 String 或者 Long 就可以了 之前 用了Ineger ,所以不对 还是要按照规范去操作。

关于其中@Api和@ApiOperation等的详细解释如下:

作用范围API使用位置
对象属性@ApiModelProperty用于出入参数对象的字段上
协议集描述@Api用于Controller类上
协议描述@ApiOperation用在Controller的方法上
Response集@ApiResponses用在controller的方法上
Response@ApiResponse用在 @ApiResponses里边
非对象参数集@ApiImplicitParams用在controller的方法上
非对象参数描述@ApiImplicitParam用在@ApiImplicitParams的方法里边
描述返回对象的意义@ApiModel用在返回对象类上

 

关于参数的详细解释

属性取值作用
paramType 查询参数类型
 path以地址的形式提交数据
 query直接跟参数完成自动映射赋值
 body以流的形式提交 仅支持POST
 header参数在request headers 里边提交
 form以form表单的形式提交 仅支持POST
dataType 参数的数据类型 只作为标志说明,并没有实际验证
 Long 
 String 
name 接收参数名(必须与方法中参数名一致)
value 接收参数的意义描述(描述信息)
required 参数是否必填
 true必填
 false非必填
defaultValue 默认值

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值