8

我目前正在使用以下相当繁琐的“servlet 样式”方法进行 Grails 301 URL 重定向:

def action = {
  ...
  if (shouldRedirect) {
    response.status = 301
    response.setHeader("Location", "http://url/to/redirect/to.html")
    render("")
    return false
  }
  ...
}

有没有更简洁、更紧凑的 Groovy/Grails'y 方式来执行 301 重定向?

请注意,我说的是 301 重定向,而不是可以使用标准 Grailsredirect(...)机制实现的标准 302 重定向。

4

2 回答 2

12

是的,现在可以按照此处所述使用redirect和指定permanent参数。例如:true

redirect(url: "http://url/to/redirect/to.html", permanent: true)
于 2009-12-27T01:16:13.673 回答
2

Grails 中的redirect机制目前支持一个permanent参数:

permanent(可选)- 如果为 true,则重定向将发出 301 HTTP 状态代码(永久移动),否则将发出 302 HTTP 状态代码

这应该可以充分解决您的问题,并且以非常 Grails-y 的方式。

于 2012-02-23T22:29:23.830 回答