使用java的JSON模式验证[关闭]

Posted

技术标签:

【中文标题】使用java的JSON模式验证[关闭]【英文标题】:JSON schema validation using java [closed] 【发布时间】:2011-01-30 17:52:30 【问题描述】:

我正在为返回 JSON 对象的 java webapp 编写一些验收测试。我想验证返回的 JSON 是否针对模式进行验证。任何人都可以为此建议任何工具吗?

【问题讨论】:

JSON 的模式?这样的事情存在吗? Yes IETF 有一个草稿:tools.ietf.org/html/draft-zyp-json-schema-04 和实现,Java 参见 github.com/fge/json-schema-validator 【参考方案1】:

JSON Tools project (Programmer's Guide) 包含一个使用 JSON 模式验证 JSON 文件内容的工具。

另一种方法是使用Rhino 验证运行(javascriptJSON Schema Validator

【讨论】:

我敢打赌,自 2010 年 3 月以来,这个主题发生了很大变化。您现在有什么想法?您是否使用任何东西进行 JSON 验证?另外,@Fredrik,你自己呢?【参考方案2】:

json-schema-validator(当前版本为 0.0.1,因此处于预 alpha 状态)对我来说效果很好。请注意,它不是 100% 的功能完整,但它仍然可以正确识别我的 json 内容中的许多错误。

【讨论】:

后面的项目托管在gitorious.org/json-schema-validation-in-java 并且仍然很活跃 现在是 2.2.6 版本,但作者不再维护它并寻找一些新人来做。但是,它可能是目前 Java 中唯一的选择。 以上两个链接都是旧的。我在这里找到它:https://github.com/daveclayton/json-schema-validator【参考方案3】:

@b.long 我发现这篇文章是为了寻找一个非常特殊的解决方案来轻松验证字符串的内容是否具有 JSON(对象/数组)。我找不到任何适合我需要的库。

JSON 工具项目或 json-schema-validator 虽然提供了很多,但对我的需求来说太大了。因此,我确实实现了构建在JSON.org reference implementation of JSON in Java 之上的my own solution。 我已经在使用 JSON.org 的代码,从技术上讲,所有这些功能都已经存在,因此我添加了这个非常简单的功能,重用了它的代码。

我使用它来轻松测试查询我的数据库的方法返回的字符串是否以正确的 JSON 格式格式化,否则如果格式错误并发布到客户端可能会导致它停止工作。

希望这对你有用,对我也有用。

【讨论】:

以上是关于使用java的JSON模式验证[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

express.js - 最好的 POST json 模式验证器 [关闭]

JSON 验证是最佳实践吗? [关闭]

如果存在验证错误,防止引导模式关闭

加载模式 json 文件以创建表或作业模式 [关闭]

从 JSON 数据生成 JSON 模式的工具 [关闭]

lumen 开启调试模式,关闭debug输出,只保留数据验证提示