我正在尝试使用以下代码在控制器中创建自定义json输出但是收到错误“Unexpected token<”在chrome rest客户端中。相同的代码适用于xml。
def customJSON = {
def a = Student.list().get(0)
render(contentType:"application/json"){
student(){ name(a.firstName) }
}
}
def customXml = {
def a = Student.list().get(0)
render(contentType:"text/xml"){
student(){ name(a.firstName) }
}
}
答案 0 :(得分:1)
您的代码会导致以下异常:
Message: Array elements must be defined with the "element" method call eg: element(value)
Line | Method
->> 98 | invokeMethod in grails.web.JSONBuilder
问题是grails发送带有异常内容的HTML响应,但使用'application / json'作为内容类型。所以客户认为这是一个无效的JSON响应。
以下代码应该有效:
def a = Student.list().get(0)
render(contentType:"application/json"){
student(name : a.firstName)
}