如何更改grails默认渲染器

时间:2014-01-27 07:07:48

标签: grails view action

我只使用grails来开发支持的服务,UI是在angularJS或其他技术中完成的。基本上它意味着我不写任何“观点”。 我没有覆盖控制器中的任何CRUD方法。

我的控制器看起来像这样:

class EmployeeController extends RestfulController {
    EmployeeController() {
        super(Employee)
    }
}

所以情况就是这样,当GES请求来自浏览器时,grails响应如下: HTTP状态404 - /file-tracker/WEB-INF/grails-app/views/employee/show.jsp

我猜默认情况下Grails会呈现视图。 但是当从 curl 获得相同的GET请求时,我会获得数据。

有什么问题?我是否必须覆盖'show'操作并显式呈现JSON(因为我需要响应中的JSON数据)?

1 个答案:

答案 0 :(得分:1)

这是因为content negotiation。线索是Accept HTTP标头,由浏览器发送,如果您没有明确定义,则不会由curl发送。

查看RestfulController源代码和respond方法的定义。

相关问题