大海话语 2021-11-10 14:44 采纳率: 87.9%
浏览 65
已结题

swagger 怎么看方法里面的需要前端传入的字段

现在用一个swagger查一下接口是否可以成功。但是,看不见方法里面的必须要传的字段呢?

img


下面是swagger的页面,没有后端 对应的userId type songId 呢?

img

  • 写回答

4条回答 默认 最新

  • lzh_me 2021-11-11 01:30
    关注

    1、swagger2和swagger3,有些区别,你可以查看两个版本具体的注解使用情况。
    以下说的是基于swagger3的,有些注解是兼容swagger2的
    2、如果有明确的参数,你可以使用@Parameter(description = "")对每个参数进行说明;
    3、如果参数是一个对象,你可以在对象类名或者属性上使用注解@Schema(description = ""),这样在swagger-ui里面,有一个Schema模块,可以看到该对象的字段说明;
    4、如果你的参数是类似于Map这种,比说你的request,可以在方法上添加@Parameters,swagger2是用 @ApiImplicitParams({
    @ApiImplicitParam(name = "", value = "", required = true, dataType = ""),
    @ApiImplicitParam(name = "", value = "", required = true, dataType = ""),
    }
    )
    把request中用到的参数都添加到注解里面进行说明。swagger注解里面的参数不影响方法逻辑,你可以当做一个注释,可以和你方法中的实际参数不一致。
    PS:开发中,有句关于Map传值的说法,叫做开发一时爽,维护火葬场,尽量不要用Map传值,这个和魔法值类似。
    你的代码中,如果request里面的参数不多,可以明确指定需要传递的参数,如果参数比较多,可以定义一个对象来传值。使用request.getParameter()最好是添加好注释,作为接口,开发和调用不是用一个人,需要添加详细的说明。

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    大海话语 2021-11-11 02:36

    说得挺详细的。我都用的是swagger2

    回复
查看更多回答(3条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 11月18日
  • 已采纳回答 11月11日
  • 创建了问题 11月10日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部