我使用Swagger定义创建了一个REST API,现在我需要使用该swagger模式验证传入的消息。我找到了几种解决方案,但是它们都依赖于一些特定的用例。最接近我需要的是这个,并且与它的描述相吻合,它可以很好地与提供的json模式配合使用,但是当我提供更复杂的swagger定义时,它只是将所有内容标记为有效。我的问题是。有没有更好、更完整或更有能力的解决方案,也许是库,可以根据Swagger定义本地验证给定的JSON消息?我需要这个,因为我正在实现WSO2 API REST解决方案,这将非常有帮助。
有一个swagger请求验证器,它有多个适配器用于各种框架,例如:Spring Web MVC
它能够针对斯瓦格/开放API 2或OpenAPI 3方案验证请求和/或响应。
它不只是验证定义的JSON主体。它还验证请求的其余部分,例如路径(变量)、标头等。
验证器能够国际化。
到目前为止,最完整的针对Swagger和OpenAPI的Java验证。
看看我的回答,这里有一个解决方案:
根据swagger文件验证json有效负载- 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;
}
问题内容: 我使用Swagger定义创建了REST API,现在我需要使用该Swagger模式验证传入消息。我发现了几种解决方案,但是它们都依赖于某些特定的用例。最接近我需要的是它,并且按照它的描述,它可以与提供的json模式一起很好地工作,但是当我提供更复杂的swagger定义时,它只是将所有内容标记为有效。我的问题是。是否有更好,更完整或胜任的解决方案库,可以根据Swagger定义本地验证给定
我在IBM Integration Bus中工作,我发现自己需要对收到的消息进行验证。由于IIB在这方面不支持任何类型的验证,我想知道是否有任何外部库可以为我验证这些消息。 到目前为止,我发现了这个https://github.com/swagger-api/swagger-inflector/blob/master/README.md#payload-但我想知道是否有其他选择可以更好地满足我的需
问题内容: 我从一些JSON文件创建了API规范,并且尝试测试这些文件是否根据API规范进行了验证。 有一些不错的工具可以根据JSON Schema进行验证,但是我没有找到针对Swagger中创建的规范进行验证的工具(用于创建API架构的工具)。我发现的唯一解决方案是在Swagger- Editor中生成客户端/服务器,这非常麻烦。 是否已经有现有工具可以针对Swagger Schema验证JSO
我从一些JSON文件中创建了一个API规范,并尝试测试这些文件是否符合API规范。 有一些很好的工具可以验证JSON模式,但是我没有机会找到一个工具来验证在Swagger(创建API模式的工具)中创建的规范。我找到的唯一解决方案是在Swagger-Editor中生成客户端/服务器,这很麻烦。 是否已经有一个现有工具可以根据Swagger模式验证JSON?
这是要根据模式验证的JSON。 问题是,如果我们传递了错误的数据,它将正确地验证eid和ename的类型(即整数或字符串)。对于例如: 如果我们为限定传递了错误的类型,那么它将验证为true(即,它不验证限定的类型,可能是因为它是嵌套的)。
问题内容: 我需要针对验证SOAP消息。(以可以根据模式验证文件的方式)。 我没有打电话给任何网络服务;我只有一条消息和一个,并且我需要验证该消息是正确的。而无需调用网络服务或之后的任何服务。 我需要在Java程序中对此进行验证。您知道一个小的Java库可以做到这一点吗? ps:我知道当您调用Web服务时,有几个库可以验证请求/响应。但是,我没有调用任何Web服务。我有一个简单的消息,还有一个,并