在Grails中使用自定义mime类型呈现视图

时间:2013-06-19 12:06:34

标签: grails mime-types content-type

我正在尝试使用自定义contentType为Grails中的reponse呈现文本。我想要的contentType是: application / vnd.api + json

我正在测试以下

render(contentType: "application/vnd.api+json") {
    message = 'some text'
    foo = 'bar'
}

不会导致抛出异常消息是缺少属性。

虽然以下工作正常:

render(contentType: "text/json") {
    message = 'some text'
    foo = 'bar'
}

我的Config.groovy在json mime.type下有以下内容:

grails.mime.types = [
...
    json:          [
        'application/json',
        'text/json',
        'application/vnd.api+json'
    ],
...
]

我的问题,如何使用Grails中的自定义mime类型进行渲染?

1 个答案:

答案 0 :(得分:3)

请求中的accept标头是否设置了自定义内容类型?

接受标头是客户端通知服务器哪种内容类型可以接受的一种方式。

config.groovy中,必须同时设置以下设置以使用接受标头

grails.mime.use.accept.header = true

我也会尝试以传统方式呈现响应:

render(contentType: "application/vnd.api+json", text: [message: 'some text', foo: 'bar'])