未知错误swagger 2.0路径引用问题

时间:2018-01-02 14:37:22

标签: path yaml swagger

我试图运行以下代码:

/v1/test/{id}:
    x-swagger-router-controller: Security
    get:
      operationId: test      
      description: "Test jwt middleware and multiple paths"      
      security:
        - JWT: []
      parameters:
      - name: "id"
        in: "path"
        description: "ID of user"
        required: true
        type: "integer"      
      responses:
        "200":
          description: "Success"
          schema:
            $ref: "#/definitions/LoginSuccess"
        "403":
          description: "Access Denied"
          schema:
            $ref: "#/definitions/Error"  
/v2/test/{id}:            
      $ref: "#/paths/~1v1~1test~1{id}"

但我收到以下错误:

  

API错误:

     

#/ paths / ~1v2~1test~1 {id} / $ ref:路径无法解析:

     

/路径/ 1V1〜〜〜1test 1 {ID}

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

在这种特殊情况下,我真正需要实现的是能够对我的API进行版本控制,尤其是在并非所有方法都有更新版本的情况下,例如/ api / v1 / method和/ api / v2 / method仍在注定要具有相同的功能。

我因此解决了它如下

parameters:
       - name: version
         in: path
         description: Version number of API
         required: true
         type: string
         enum: &APIVERSION
           - v1
           - v2

这样,v1和v2都去了同一个地方。我还可以在枚举中添加v3等,它可以通过不同的路径重用为枚举:* APIVERSION