此代码段中出现一个奇怪的问题:
class FooController {
def barService
def update = {
log.debug("I'm getting executed")
barService.doFoo()
render "Done"
}
}
当我现在在浏览器中输入http://my.domain.tld/fancyapp/foo/update
(在我的情况下是Firefox)时,update
中的代码会被执行三次。
编辑1: barService.doFoo()包含大量计算,因此完成需要很长时间。
编辑2: @hvgotcodes:不,抱歉,没有身份验证,我的UrlMappings.groovy看起来像这样:
class UrlMappings {
static mappings = {
"/$controller/$action?/$id?"{
constraints {
// apply constraints here
}
}
"/"(view:"/index")
"500"(view:'/error')
}
}
@Jarred:不,只有通常的嫌疑人Bootstrap.groovy
,BuildConfig.groovy
,Config.groovy
,DataSource.groovy
和UrlMappings.groovy
。
暗示任何人?
答案 0 :(得分:0)
如果请求时间过长,浏览器可能会重试该请求。如果你可以提高doFoo()方法的性能,它应该只执行一次。