📜  在 grails 中重定向 - Groovy (1)

📅  最后修改于: 2023-12-03 15:23:09.243000             🧑  作者: Mango

在 Grails 中重定向 - Groovy

在 Grails 中,重定向是常见的操作,通常是在控制器中执行的。重定向操作将用户从一个页面或操作带到另一个页面或操作。本文将介绍如何在 Grails 中执行重定向操作。

重定向语句

在 Grails 的控制器中,可以使用以下语句执行重定向操作:

redirect uri: '/目标链接'

这里,目标链接是重定向的目标页面或操作的 URL。重定向语句通过将 HTTP 状态码设置为 302(临时重定向)或 301(永久重定向)将用户从当前页面重定向到目标页面。

例如,以下代码段将用户从控制器的 login 必须登录页面重定向到主页:

def index() {
    if (!(session.user)) {
        redirect uri: '/login'
    }
}

在这个例子中,redirect 语句将用户从 index() 操作重定向到登录页面,如果用户没有登录。当用户成功登录时,该控制器将再次执行 index() 操作,并将用户重定向到主页。

重定向和动作之间的区别

在 Grails 中,"redirect" 表示您要重定向到另一个链接,而 "forward" 表示您要执行另一个动作,但仍在同一个请求中。

区别在于 "redirect" 会向浏览器发送一个新的 HTTP 请求,而 "forward" 仅在服务器上执行新的操作。

结论

在 Grails 中,可以使用 redirect uri 语句执行重定向操作,将用户带到目标页面或操作。如果您需要更多动作,可以尝试使用 "forward" 语句。现在,您已了解如何在 Grails 中执行重定向操作!