7

我有一个控制器操作,它返回用于 api 目的的 JSON 数据,而且还有很多。我希望能够在浏览器中检查它,并为查看器很好地缩进。例如,如果我的数据是

data = { :person => { :id => 1, :name => "john doe", :age => 30 }, :person => ... }

我想看看

{ "person" : 
    { 
        "id"   : 1, 
        "name" : "john doe",
        "age"  : 30,
    }, 

   "person" : 
    { 
        "id"   : 2, 
        "name" : "jane doe",
        "age"  : 31,
    },

    ...etc
}

在视图中。

我考虑过使用不同的路线来获取大量/漂亮的数据:

# GET /api/json
# ...
respond_to do |format|
  format.html { render :json => data.to_json }
end

# GET /api/json/inspect
# ...
respond_to do |format|
  format.html { render :text => pretty_json }
end

任何人都知道执行此操作或类似操作的 gem/plugin 吗?我尝试使用 JSON.pretty_generate,但它似乎在 rails (2.3.5) 内不起作用。谢谢。

4

4 回答 4

4

使用 JSON.pretty_generate(object)

http://flori.github.com/json/doc/classes/JSON.html#method-i-pretty_generate

于 2010-11-16T21:08:35.297 回答
3

这仅适用于 Firefox,但假设您只需要漂亮的 json 来帮助您或其他开发人员在开发过程中,您应该查看 Firefox 的 JSONview 插件(它让我的生活更轻松):

https://addons.mozilla.org/en-US/firefox/addon/10869/

如果您想让所有用户都可以使用漂亮的 json,而不管浏览器如何,我没有一个好的解决方案可以提供。

于 2010-05-21T05:02:15.650 回答
3

你可以用这个

render json: JSON.pretty_generate(data)
于 2013-05-16T09:59:01.710 回答
0

jsonpp是一个很棒的命令行工具,用于格式化(漂亮的打印)JSON。

您可以将 JSON 导入其中:

curl -s -L http://t.co/tYTq5Pu | jsonpp
于 2013-05-20T09:19:48.943 回答