相关疑难解决方法(0)

如何从 OpenAPI 3.0 yaml 文件生成 JSON 示例?

我有我的 openapi: 3.0.0 YAML 文件,我正在寻找一种从模式生成测试数据响应(JSON 对象)的方法。 就是我要找的,但我不能让它在 openapi: 3.0.0 上工作,代码非常适合“swagger”:“2.0”定义。我试图让代码与支持 OpenAPI 3.0 的 Swagger Java 库 2.x 一起使用。我知道我需要使用 Swagger 2.x 版。

import io.swagger.parser.SwaggerParser;
import io.swagger.models.*;
import io.swagger.inflector.examples.*;
import io.swagger.inflector.examples.models.Example;
import io.swagger.inflector.processors.JsonNodeExampleSerializer;
import io.swagger.util.Json;
import io.swagger.util.Yaml;
import java.util.Map;
import com.fasterxml.jackson.databind.module.SimpleModule;


// Load your OpenAPI/Swagger definition
Swagger swagger = new SwaggerParser().read("http://petstore.swagger.io/v2/swagger.json");

// Create an Example object for the Pet model
Map<String, Model> definitions = swagger.getDefinitions();
Model pet = definitions.get("Pet");
Example example = ExampleBuilder.fromModel("Pet", pet, definitions, new HashSet<String>());
// Another way:
// …
Run Code Online (Sandbox Code Playgroud)

java json yaml swagger openapi

6
推荐指数
2
解决办法
3371
查看次数

从Swagger Definition生成样本请求和响应

我想从招摇定义文件(yaml / json)生成示例请求和响应。目的是存根这些API。

不幸的是,我没有管理员权限来安装swagger编辑器的generate server列表中列出的任何服务器框架。我还尝试了用soapui(5.x)和ready api模拟它,但是它们都无法解析定义文件响应对象中的模式引用-例如:

"responses": {
          "200": {
            "description": "pet response",
            "schema": {
              "$ref": "**#/definitions/Pet**"
            }
          },
          "default": {
            "description": "unexpected error",
            "schema": {
              "$ref": "**#/definitions/ErrorModel**"
            }
          }
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法可以根据定义生成模拟请求和响应?

谢谢,

json swagger-2.0

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

json ×2

java ×1

openapi ×1

swagger ×1

swagger-2.0 ×1

yaml ×1