【发布时间】:2020-06-24 18:00:08
【问题描述】:
我正在解析一个 Json 文件,该文件应根据 json 的正式规范进行格式化,其中不包括将键和值包含在单引号 (') 中的可能性。但是,使用org.json 或gson,实现将接受这些条目并成功地将文件转换为JsonObject。我需要它失败(我的流程中有第二个验证不允许单引号)。
我一直在研究如何配置解析器以使其失败。我读过Jackson 的JsonParser 默认情况下不允许这样做,然后有可能显式更改它。我可以对前面提到的库之一做同样的事情,还是应该改用Jackson?
谢谢!
【问题讨论】:
-
为什么不使用杰克逊?
-
我试图避免向该项目添加更多依赖项。老实说,
org.json比gson和Jackson更可取,因为它已经被另一个模块使用了。 -
如果您已经转换为 JSON 对象,那么为什么引号是什么重要,因为它们不再存在于数据中?
-
@Deadron 问题已经说明了原因:“我需要它失败(我的流程中有第二个验证不允许单引号)。” --- OP 希望在无效 JSON 上早日失败。
-
@Andreas 我相信您知道并非每个人都能提出完美的问题。它也很重要,因为并非所有 JSON 解析器都会预先解析整个对象。如果他正在尝试验证 JSON 与解析其重要的是要知道。