我试图在错误500根据请求的格式发生时在Grails中服务于不同的响应。Grails:如何根据格式(JSON,HTML)为错误500提供不同的响应?
我创建了一个ErrorController,我使用它在URLMappings但我没有得到正确的请求格式:
def handle() {
withFormat {
html {
response.status = 500
render(view:'/errors/serverError')
}
json {
response.setContentType "application/json; charset=utf-8"
response.status = 500
ApiResponse apiResponse = new ApiResponse(
meta: new ApiMeta(
code: 500,
errorType: "Whatever",
msgs: ["${request.exception}"]
)
)
render apiResponse as JSON
}
}
}
的反应总是在HTML中。还用'request.withFormat'尝试了相同的结果。
我在这里错过了什么?
+1我一直在试图找出这一个为好;(另外我希望能够主题500页 – chrislovecnm