我只使用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数据)?
答案 0 :(得分:1)
这是因为content negotiation。线索是Accept
HTTP标头,由浏览器发送,如果您没有明确定义,则不会由curl
发送。
查看RestfulController源代码和respond方法的定义。