如何在Grails中执行201重定向?

如何在Grails中执行201重定向?,grails,redirect,Grails,Redirect,对于更RESTful的控制器,创建实体的操作实际上应该返回设置了位置头的201状态代码,而不是30x状态代码。我认为在重定向调用上会有一个状态参数,但实际上没有 那么,如何使用Grails执行“201重定向”呢?Grails重定向本质上是HTTP 302状态。如果要返回特定状态,可以使用render(状态:201,…)是否有一种“简单”的方法可以使用render将新创建对象的URL放入位置标题?例如,通过传递一个动作?这不仅仅是我要寻找的状态,也是要设置的位置标题。response.setHea

对于更RESTful的控制器,创建实体的操作实际上应该返回设置了位置头的201状态代码,而不是30x状态代码。我认为在
重定向
调用上会有一个
状态
参数,但实际上没有


那么,如何使用Grails执行“201重定向”呢?

Grails重定向本质上是HTTP 302状态。如果要返回特定状态,可以使用
render(状态:201,…)

是否有一种“简单”的方法可以使用
render
将新创建对象的URL放入
位置
标题?例如,通过传递一个动作?这不仅仅是我要寻找的状态,也是要设置的
位置
标题。
response.setHeader('location',url)
对于这一点,您也可以使用
response.setStatus(201)
。我不想将我的控制器直接绑定到特定的url模式,我希望路由引擎处理该映射(这就是
重定向所做的)。另外,在调用
重定向(…)
之前设置请求状态也不起作用,因为重定向会覆盖它。我认为grails重定向默认设置为状态302,而不是301