可以在Grails的1.3.7漂亮打印JSON?

有问题的JSON正在从RESTful服务读,我想打印出来(安慰,虽然在.gsp将被罚款也)进行调试。 Groovy的1.3.7(截至2011年8月)使用Groovy的1.7.8(不具​​备JsonOutput 1.8中引入)

请注意我目前正在读它在像这样的,这我不相信是“grooviest或大盘-EST”的方式来做到这一点 - 或许,如果做不同的,我可以利用转换器和漂亮的印刷? 代码示例将不胜感激。

def serviceURL = new URL(theURL) def json = new JSONObject(serviceURL.text) println json

--------------解决方案-------------

你几乎可以在打印JSON toString(int indentFactor)方法。 例:

def json = new JSONObject()
json.put('foo', 'bar')
json.put('blat', 'greep')
println json
===>{"foo":"bar","blat","greep"}
println json.toString(4)
===>{
"foo": "bar",
"blat": "greep"
}

可以使用grails.converters.JSON(这是对JSON最常用的库):

在你的Config.groovy文件中添加行prettyPrint设置为true:

grails.converters.default.pretty.print=true

然后,在你的控制器:

import grails.converters.*

def serviceURL = new URL(theURL)
def json = JSON.parse(serviceURL.text)
println "JSON RESPONSE: ${json.toString()"

如果你在一个Grails控制器和计划来渲染JSON,那么你用这样的事情(使用Grails 2.3.5):

public prettyJson() {
JSON json = ['status': 'OK'] as JSON
json.prettyPrint = true
json.render response
}

我发现这里的解决方案:http://www.intelligrape.com/blog/2012/07/16/rendering-json-with-formatting/

分类:JSON 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.525 (s). 10 q(s)