Grails转换器可以配置为默认打印(或不打印)。
我喜欢使用响应方法代替任何MarkupBuilder,JsonBuilder 或其他任何我应该处理响应格式的库。
respond myObject
用户可以查询xml,json或hal。
如何让用户查询漂亮的图片(假设默认不是) 如果用户在URL中传递参数,如下所示:
/foos?pretty=true
如何强制回复漂亮的打印?
OB的。我看到了this question,但他们都是静态地解决了这个问题。我想根据要求范围改变它。
答案 0 :(得分:0)
由于您希望能够根据控制器参数选择格式,我认为使用render()
的Grails转换器将比使用respond()
更好。这是一个例子:
import grails.converters.*
class SomeController {
def foos() {
def pretty = params.pretty
def prettyType
def myObject = /* whatever */
if(pretty == 'xml') prettyType = XML
if(pretty == 'json') prettyType = JSON
if(prettyType) render myObject.asType(prettyType)
else render myObject
}
}
网址类似于:/foos?pretty=xml
或/foos?pretty=json
。