【问题标题】:Swagger-ui how is the name of api (resource) generated? [duplicate]Swagger-ui api(资源)的名字是怎么生成的? [复制]
【发布时间】:2016-10-30 08:15:54
【问题描述】:

当我使用 swagger 创建 API 时,通常我的 API 具有资源的名称:

Tasks
/tasks
/tasks/{id}
etc.

有时我只得到一个默认值:

Default
GET /tasks
GET /tasks/{uuid}
etc.

什么决定了生成的 API 的标头名称?

希望行为的屏幕截图(任务有时是默认设置):

【问题讨论】:

    标签: json swagger swagger-ui


    【解决方案1】:

    您是指 Swagger UI 中的这些标题吗?

    它们是根据您的 API 操作的tags 生成的。例如,要将操作分组到“任务”下,请使用:

    {
      ...
    
      "paths": {
        "\/tasks:": {
           "tags": [
             "Tasks"
           ],
           ...
    

    每个操作可以有任意数量的标签。没有标签的操作将列在“默认”组下。

    要为标签提供描述,请使用* tags 部分:

    {
      ...
    
      "tags": [
        {
          "name": "Tasks",
          "description": "Operations to manage tasks"
          }
        },
        {
          "name": "Notes",
          "description": "Operations to manage notes"
          }
        }
      ],
      ...
    

    【讨论】:

      【解决方案2】:

      这取决于您作为参数传递给 RESTful 服务实现顶部的 swagger 的 Api 注释 (io.swagger.annotations.Api) -

      @Path(value="/")
      @Api(value="/")
      public interface YourService {
          ....
      }
      

      @Api(value="/") 将生成default

      @Api(value="/Tasks") 会生成Tasks

      【讨论】:

        最近更新 更多