gpt4 book ai didi

java - 根据 Java 中的 Swagger 定义验证 JSON 消息

转载 作者:行者123 更新时间:2023-12-05 03:09:08 25 4
gpt4 key购买 nike

我使用 Swagger 定义创建了一个 REST API,现在我需要使用该 Swagger 模式验证传入消息。我找到了几种解决方案,但它们都依赖于某些特定的用例。最接近我需要的是 this和它的描述一样,它与提供的 json 模式一起工作得很好,但是当我提供更复杂的 swagger 定义时,它只是将所有内容标记为有效。我的问题是。是否有更好、更完整或更有效的解决方案,也许是库,可以根据 Swagger 定义 native 验证给定的 JSON 消息?我需要这个,因为我正在实现 WSO2 API REST 解决方案,这会有很大帮助。

最佳答案

在这里查看我的答案并提供解决方案:

Validating json payload against swagger file - json-schema-validator

它基于使用库:https://github.com/bjansen/swagger-schema-validator .它允许根据 swagger 架构中包含的定义检查您的 json。

try (InputStream inputStream = schemaLocation.getInputStream()) {
SwaggerValidator validator = SwaggerValidator.forJsonSchema(new InputStreamReader(inputStream));
ProcessingReport report = validator.validate(message, "/definitions/Pet");
return report.isSuccess();
} catch (IOException e) {
logger.error("IOException", e);
return false;
} catch (ProcessingException e) {
e.printStackTrace();
return false;
}

关于java - 根据 Java 中的 Swagger 定义验证 JSON 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43760008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com