【问题标题】:Building XML API with Grape用 Grape 构建 XML API
【发布时间】:2012-08-16 16:13:16
【问题描述】:

我正在 Grape gem 的帮助下构建 XML API。为 API 操作构建 XML 的最佳方式是什么?由于 Grape 没有使用标准的 rails 控制器,我不能使用views/../xml.builder。你有什么建议?也许有一些构建 xml api 的最佳实践?

【问题讨论】:

    标签: ruby-on-rails xml ruby-on-rails-3 api grape-api


    【解决方案1】:

    由于没有任何答案,我将回答我自己的问题。 我最终得到了模块,我在哪里声明了不同类型的 xml 响应并将这些模块包含到我的 Grape API 中。在 API 操作中,我只是从该模块调用响应方法。使用这种方法,我的代码清晰且分离。

    【讨论】:

    • 嗨@Mikhail Nikalyukin 我遇到了类似的问题。并使用相同的方法在模块中使用生成器生成 xml。但是,当尝试使用 Grape 返回时,我收到 cannot convert String to xml 错误。我使用 content_type :xml, "text/xml"。有什么建议?谢谢!
    • @PSR 不久前,我们使用了旧的葡萄版本,它没有正确解析我们的 xml,我对葡萄做了一些更改。看看我在 xml_formatter 分支github.com/dpsk/grape/branches 中的提交,也许它会对你有所帮助。
    • 我现在也遇到了同样的问题,我正在使用 rabl 来渲染 xml,但到目前为止它不如 xml.builder 灵活......您能否进一步解释一下您的解决方案?
    • @zapico 你到底在哪一部分有问题?
    • @zapico 看看gist.github.com/dpsk/d426fbbadefbc74959c4,这是一个简单的例子,说明如何做到这一点。
    【解决方案2】:

    这似乎是样本。只需提供格式告诉葡萄您的默认格式

    format :xml
    content_type :xml, "text/xml"
    

    然后将.xml添加到请求url的末尾。

    【讨论】:

      猜你喜欢
      • 2013-05-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-19
      • 2016-05-08
      相关资源
      最近更新 更多