在引用架构时使用特定属性

时间:2019-05-29 15:43:15

标签: swagger swagger-ui swagger-2.0 swagger-codegen

我正在使用 swagger 2.0 ,并且具有以下架构(定义):

"User": {
    "type": "object",
    "properties": {
        "firstName": {
            "type": "string",
            "example": "Tom"
        },
        "lastName": {
            "type": "string",
            "example": "Hanks"
        },
        "email": {
            "type": "string",
            "example": "Tom.Hanks@gmail.com"
        },
        "password": {
            "type": "string",
            "example": "azerty@123456"
    }
}

并且我想在我的回应之一中引用此架构,所以我执行以下操作:

"responses": {
    "201": {
        "description": "Created.",
        "schema": {
            "$ref": "#/definitions/User"
        }
    }
}

直到现在一切正常,但我不想在响应模式中公开password属性。反正是从User定义中选择要使用的属性?

1 个答案:

答案 0 :(得分:0)

没有,没有办法。我建议您定义2种类型:

  • 一种没有密码的用户数据类型,我们将其命名为User
  • 以及从中继承的另一种类型,并另外包含password属性。我们将其命名为UserWithCredential