可以在 Grails 1.3.7 中漂亮地打印 JSON 吗?
有问题的 JSON 是从 RESTful 服务中读取的,我想将其打印出来(打印到控制台,尽管在 .gsp 中也可以)以进行调试。 Groovy 1.3.7(截至 2011 年 8 月)使用 Groovy 1.7.8(没有 1.8 中引入的 JsonOutput)
注意我目前正在这样阅读它,我不相信这是“最grooviest 或 grail-est” ' 的方式来做到这一点 - 如果采取不同的方式,也许我可以利用转换器和漂亮的打印?代码示例将不胜感激。
def serviceURL = new URL(theURL)
def json = new JSONObject(serviceURL.text)
println json
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您可以使用 toString(int indentFactor) 方法漂亮地打印 JSON。例子:
You can pretty print JSON with the
toString(int indentFactor)
method. Example:您可以使用 grails.converters.JSON (这是最常用的 JSON 库):
在 config.groovy 文件中,添加行以将 PrettyPrint 设置为 true:
然后,在控制器中:
You can use grails.converters.JSON (which is the most commonly used library for JSON):
In your config.groovy file, add the line to set prettyPrint to true:
Then, in your controller:
如果您在 Grails 控制器中并计划渲染 json,那么您可以使用类似的内容(使用 Grails 2.3.5):
我在这里找到了该解决方案: http://www.intelligrape.com/blog/2012/07/16/rendering-json-with-formatting/
If you're in a Grails controller and plan to render the json, then you use something like this (using Grails 2.3.5):
I found that solution here: http://www.intelligrape.com/blog/2012/07/16/rendering-json-with-formatting/
除了在 Config.groovy 中设置默认的漂亮打印之外,JSON 的 toString() 方法还接受一个布尔参数。它控制是否漂亮地打印结果。
在 Grails 1.3.9 中测试。
Apart from set default pretty print in
Config.groovy
, JSON's toString() method accepts one boolean parameter. It controls whether pretty print the result or not.Tested in Grails 1.3.9.