挥舞着数组中的元素列表

时间:2018-09-05 13:41:22

标签: rest swagger swagger-2.0

我是急于实施的新手。我有一个查询参数“ Geschaeftsvorfall”,该参数可以是字符串值A或P,当我到达终点时。我希望数组[validPsd2Ids]充满整数。

我编写了以下代码,但我不知道如何验证它。有人可以告诉我我在哪里出错了吗? 另外,我该怎么做才能在响应中打印列表而不是数组?

    "parameters": {
      "Geschaeftsvorfall": {
      "name": "Geschaeftsvorfall",
      "in": "query",
      "description": "Geschaeftsvorfall",
      "required": true,
      "type": "string",
      "enum": [
        "A",
        "P"

      ]
    }
  },
                  "definitions": {
                  "ValidePsd2Ids": {
                    "type": "array",
                      "items": {
                       "properties": {
                     "ValidePsd2Ids": {
                      "type": "integer",
                         example: [100000005,
                          100000006,
100000007,
100000008,
100000009,
100000010,
100000011,
100000012,
100000013,
100000014,
100000015,
100000016,
100000017,
100000018,
100000019,
100000020,
100000021,
100000022,
100000023,
100000024,
100000025,
100000034,
100000035,
100000036,
100000037,
100000038,
100000039,
100000048,
100000049,
100000050,
100000054,
100000055,
100000056,
100000057,
100000058,
100000117,
100000163,
100000165,
100000195,
100000196,
100000197,
100000198,
100000199,
100000201,
100000214,
100000217,
100000218]
              }
            }
          }

    }
    },

    "paths": {
    "/payments/validaccounttypes/": {
      "get": {
        "tags": [
          "payments"
        ],
        "summary": "Valid PSD2 relevant accounts",
        "description": "Reads the list of valid PSD2 revelant IDs.",
        "consumes": [
          "application/json"
        ],
        "produces": [
          "application/json"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/Geschaeftsvorfall"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "type": "array",
               "items": {
            "properties": {
              "ValidePsd2Ids": {
                "type": "integer"
              }
            }
          },
              "properties": {
                "ValidePsd2Ids": {
                  "$ref": "#/definitions/ValidePsd2Ids"
                }
              }
            }

          }

            }
          }
        }
      }

1 个答案:

答案 0 :(得分:0)

参数定义正确。

响应定义不正确。您说响应看起来像

{"ValidePsd2Ids" : [1,2,3,4,5,6,7,...]}

按照OpenAPI的说法,这是一个type: object,其属性ValidePsd2Ids包含一个整数数组。可以这样描述:

  "definitions": {
    "ValidePsd2Ids": {
      "type": "object",
      "properties": {
        "ValidePsd2Ids": {
          "type": "array",
          "items": {
            "type": "integer"
          },
          "example": [
            100000005,
            100000006,
            100000007
          ]
        }
      }
    }
  },

responses应该是:

    "responses": {
      "200": {
        "description": "OK",
        "schema": {
          "$ref": "#/definitions/ValidePsd2Ids"
        }
      }
    }