mirror of
https://github.com/astaxie/beego.git
synced 2024-11-23 00:00:54 +00:00
commit
235d2740c7
11
router.go
11
router.go
@ -574,10 +574,12 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
|
|||||||
n := len(requestPath)
|
n := len(requestPath)
|
||||||
if requestPath == route.pattern {
|
if requestPath == route.pattern {
|
||||||
runrouter = route.controllerType
|
runrouter = route.controllerType
|
||||||
findrouter = true
|
|
||||||
runMethod = p.getRunMethod(r.Method, context, route)
|
runMethod = p.getRunMethod(r.Method, context, route)
|
||||||
|
if runMethod != "" {
|
||||||
|
findrouter = true
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
}
|
||||||
// pattern /admin url /admin 200 /admin/ 404
|
// pattern /admin url /admin 200 /admin/ 404
|
||||||
// pattern /admin/ url /admin 301 /admin/ 200
|
// pattern /admin/ url /admin 301 /admin/ 200
|
||||||
if requestPath[n-1] != '/' && len(route.pattern) == n+1 &&
|
if requestPath[n-1] != '/' && len(route.pattern) == n+1 &&
|
||||||
@ -616,12 +618,14 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
|
|||||||
r.URL.RawQuery = url.Values(values).Encode()
|
r.URL.RawQuery = url.Values(values).Encode()
|
||||||
}
|
}
|
||||||
runrouter = route.controllerType
|
runrouter = route.controllerType
|
||||||
findrouter = true
|
|
||||||
context.Input.Params = params
|
context.Input.Params = params
|
||||||
runMethod = p.getRunMethod(r.Method, context, route)
|
runMethod = p.getRunMethod(r.Method, context, route)
|
||||||
|
if runMethod != "" {
|
||||||
|
findrouter = true
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if !findrouter && p.enableAuto {
|
if !findrouter && p.enableAuto {
|
||||||
// deal with url with diffirent ext
|
// deal with url with diffirent ext
|
||||||
@ -801,9 +805,8 @@ func (p *ControllerRegistor) getRunMethod(method string, context *beecontext.Con
|
|||||||
return m
|
return m
|
||||||
} else if m, ok = router.methods["*"]; ok {
|
} else if m, ok = router.methods["*"]; ok {
|
||||||
return m
|
return m
|
||||||
} else {
|
|
||||||
return strings.Title(method)
|
|
||||||
}
|
}
|
||||||
|
return ""
|
||||||
} else {
|
} else {
|
||||||
return strings.Title(method)
|
return strings.Title(method)
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user