301 редирект в Grails - PullRequest
       10

301 редирект в Grails

8 голосов
/ 23 декабря 2009

В настоящее время я делаю URL-перенаправления Grails 301 с использованием следующего довольно громоздкого метода «сервлет-стиля»:

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

Есть ли более чистый и более компактный способ Groovy / Grails'y для выполнения перенаправления 301?

Обратите внимание, что я имею в виду перенаправление 301, а не стандартное перенаправление 302, которое может быть достигнуто с помощью стандартного механизма Grails redirect(...).

Ответы [ 2 ]

12 голосов
/ 27 декабря 2009

Да, теперь можно использовать redirect и указать параметр permanent как true, как описано здесь . Например:

redirect(url: "http://url/to/redirect/to.html", permanent: true)
2 голосов
/ 24 февраля 2012

Механизм redirect в Grails в настоящее время поддерживает параметр permanent:

permanent (необязательно) - если true, перенаправление будет выдано с кодом состояния 301 HTTP (постоянно перемещен), в противном случае будет выдан код состояния 302 HTTP

Это должно адекватно решить вашу проблему, и очень по-Граалям.

...