Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用SwaggerValidator(com.atlassian.oai.validator)在没有请求或响应的情况下验证简单的JSON_Json_Validation_Swagger - Fatal编程技术网

如何使用SwaggerValidator(com.atlassian.oai.validator)在没有请求或响应的情况下验证简单的JSON

如何使用SwaggerValidator(com.atlassian.oai.validator)在没有请求或响应的情况下验证简单的JSON,json,validation,swagger,Json,Validation,Swagger,我有以下需要: 输入是从消息传递(或Kafka)队列获取的JSON对象 我需要根据swagger规范验证上述JSON消息。我找不到任何可靠的解决方案来将swagger转换为JSON模式,因此我决定看看是否可以使用com.atlassian.oai.validator来实现这一点 然而,挑战在于,仅在使用核心验证器时,我们被迫在严格意义上制定请求/响应,但我想要的只是类似JSON模式的验证(主要是JSON结构、数据内容等)。我不知道如何使用这个验证器来实现这一点 示例代码如下所示: pri

我有以下需要: 输入是从消息传递(或Kafka)队列获取的JSON对象 我需要根据swagger规范验证上述JSON消息。我找不到任何可靠的解决方案来将swagger转换为JSON模式,因此我决定看看是否可以使用com.atlassian.oai.validator来实现这一点

然而,挑战在于,仅在使用核心验证器时,我们被迫在严格意义上制定请求/响应,但我想要的只是类似JSON模式的验证(主要是JSON结构、数据内容等)。我不知道如何使用这个验证器来实现这一点

示例代码如下所示:

    private static final String SWAGGER_JSON_URL = "http://petstore.swagger.io/v2/swagger.json";    
    String inputJSON = "{"
                    + "  \"id\": 1,"
                    + "  \"category\": {"
                    + "    \"id\": 0,"
                    + "    \"name\": \"string\""
                    + "  },"
                    + "  \"name\": \"doggie\","
                    + "  \"photoUrls\": ["
                    + "    \"string\""
                    + "  ],"
                    + "  \"tags\": ["
                    + "    {"
                    + "      \"id\": 2,"
                    + "      \"name\": \"string\""
                    + "    }"
                    + "  ],"
                    + "  \"status\": \"available\""
                    + "}";
OpenApiInteractionValidator validator = OpenApiInteractionValidator.createFor(SWAGGER_JSON_URL).build();
现在我不知道如何调用validator.validate并将inputJSON作为参数提供

我通过创建simpleresponse尝试了以下方法,看看这是否有帮助,但我还是没有找到调用validateResponse方法的方法,因为它坚持使用许多我没有的参数:

final Response response = SimpleResponse.Builder.ok()
                .withContentType("application/json")
                .withBody(inputJSON)
                .build();
        ValidationReport report = validator.validateResponse(response);
有人能帮我吗?还是我用错误的东西来实现我的愿望?如果有任何其他解决方案,请让我知道

和平,
阿南

你找到解决办法了吗?没有。我没有