【发布时间】:2016-01-15 02:28:16
【问题描述】:
我有一个想法,我想为我的两类 URL 分配前缀。一个类别是
/baseurl/api/$controller
对于安全的 REST URL,然后:
/baseurl/register/$action
针对当前一类不安全的 URL
然后我认为最好将前缀 /api 和 /register 存储在变量中,以便在需要时可以在其他地方引用它们(例如我的安全配置)。但是,我无法在我的 UrlMappings 中使用它。似乎没有填充定义 URL 部分的变量。考虑以下 UrlMappings.groovy,其中我定义了一个 SignupController.groovy 以映射到注册,并且每个其他控制器都与 API 相关:
class UrlMappings {
static final API_URL_ROOT = "/api"
static final REGISTER_URL_ROOT = "/register"
static mappings = {
API_URL_ROOT + "/$controller/$action?/$id?(.$format)?" {
constraints {
}
}
REGISTER_URL_ROOT (controller: "signup")
"/"(view: "/index")
"500"(view: '/error')
"404"(view: '/notFound')
}
}
当它运行时,我只能通过根 URL 直接调用我的控制器,即 localhost:8080/login 和 localhost:8080/signup,而我希望它是:
localhost:8080/api/v1/login 和 localhost:8080/register/signup
我该如何解决这个问题?
【问题讨论】:
-
我对你的问题的回答还是不满意吗?如果没有,你能接受吗
标签: grails grails-3.0