如何在maven项目中从swagger.yaml获取模拟的http响应

时间:2017-03-27 03:40:41

标签: swagger swagger-ui swagger-2.0

我知道swagger core,swagger inflector在创建http响应时读取了一个swagger.yaml / json文件。现在我们有一个使用wire mock to stub响应,其中存根的内容必须来自swagger文件。

我已经浏览了很多例子,但无法找出正确的函数来转换swagger.yaml / json以返回http响应。请帮帮我

1 个答案:

答案 0 :(得分:0)

SwaggerHub可用于在JSON或YAML中定义API。提供的UI生动地显示了API。 UI可以选择触发新定义的API并将响应检查为模型 - JSON响应主体的结构。如果"示例"已在API规范中给出,它已在响应中获取。

如果此响应模型按要求工作,则可以在WireMock中使用它来生成具有固定数据的存根响应。下面显示了一个swagger规范片段和响应模型 -

API规范 -

"swagger": "2.0",


    "info":{

    "version":"v0.1",

    "title":
    "Capital city finder",

    "description":"Search capital city by country name"

    },

    "definitions":{

    "city":{

    "properties":{

        "countryName":{

        "type":"string",

        "example":"United Kingdom"

        },

        "capitalCity":{

        "type":"string",

        "example":"London"

        },

        "nationalAnimal":{

        "type":"string",

        "example":"Lion"

        },

        "popularFood":{

        "type":"string",

        "example":"Fish & Chips"

        }

... ...  ...   

响应模型 -


    [
      {
        "countryName": "United Kingdom",
        "capitalCity": "London",
        "nationalAnimal": "Lion",
        "popularFood": "Fish & Chips"
      }
    ]

现在还不确定这是否与您相关。