【问题标题】:How to parse Nokogiri/libXML XML errors to human-friendly errors?如何将 Nokogiri/libXML XML 错误解析为人性化错误?
【发布时间】:2014-03-23 07:17:51
【问题描述】:

我们正在使用 Nokogiri 通过 XSD 验证 XML 文件。问题是 Nokogiri 生成的错误信息不是很友好而且很难翻译:

"Element '{http://www.portalfiscal.inf.br/nfe}infNFe': The attribute 'Id' is required but missing."

有没有人知道解析器或任何其他方法可以从错误中捕获所需的信息以生成更人性化的错误?

在那之前,我们将为他们做一个自定义解析器......哎呀!

【问题讨论】:

  • 您认为“更人性化的错误”是什么?
  • 我已经构建了一个解析器,它最终会这样做:gist.github.com/victormartins/9185529 这样我的客户可以以他们想要的任何方式显示错误消息,只需像他们那样翻译 yml 文件中的错误其他一切。我会在完成后发布一个 gem,也许它会帮助其他人。

标签: nokogiri libxml2


【解决方案1】:

我为此创建了一个现在开源的 gem:https://rubygems.org/gems/xml_errors_parser

到目前为止,它似乎工作得很好,但目前解析的错误数量很少。然而,添加新错误非常容易,因此我们将根据需要添加它们。

代码审查和拉取请求总是很棒:)

【讨论】:

    猜你喜欢
    • 2010-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多