为了发送适当的响应,我需要检测是否已通过经典 HTTP GET 请求、AJAX 请求或 g:include 请求 Controller 操作标签库.
例如,考虑以下片段代码:
class CommunityController {
def show = {
def users = getUsers()
if (/* WHAT IS THE CODE HERE??? */) //g:include request => render 'show' template only
render template:'show', model=[users]
else if (request.xhr) //Ajax => we send JSON content
render users as JSON
else //Classic request => we render 'show' GSP page
[users]
}
}
...我怎样才能检测到该操作已通过 g:include 标记库调用?
谢谢。
最佳答案
你可以这样测试:
import org.springframework.web.util.WebUtils
if (request.getAttribute(WebUtils.INCLUDE_REQUEST_URI_ATTRIBUTE)) {
// request was included
}
关于grails - 如何检测 Controller 已被 g :include tag lib? 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3969615/