mirror of
https://github.com/astaxie/beego.git
synced 2024-11-22 12:30:54 +00:00
clearly the router, If user set the third params, will not follow the RESTful method
This commit is contained in:
parent
fc19f8f183
commit
0b659961ba
20
router.go
20
router.go
@ -566,10 +566,12 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
|
||||
for _, route := range p.fixrouters {
|
||||
n := len(requestPath)
|
||||
if requestPath == route.pattern {
|
||||
runrouter = route.controllerType
|
||||
findrouter = true
|
||||
runMethod = p.getRunMethod(r.Method, context, route)
|
||||
break
|
||||
if runMethod != "" {
|
||||
runrouter = route.controllerType
|
||||
findrouter = true
|
||||
break
|
||||
}
|
||||
}
|
||||
// pattern /admin url /admin 200 /admin/ 404
|
||||
// pattern /admin/ url /admin 301 /admin/ 200
|
||||
@ -608,11 +610,13 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
|
||||
//reassemble query params and add to RawQuery
|
||||
r.URL.RawQuery = url.Values(values).Encode()
|
||||
}
|
||||
runrouter = route.controllerType
|
||||
findrouter = true
|
||||
context.Input.Params = params
|
||||
runMethod = p.getRunMethod(r.Method, context, route)
|
||||
break
|
||||
if runMethod != "" {
|
||||
runrouter = route.controllerType
|
||||
context.Input.Params = params
|
||||
findrouter = true
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -798,7 +802,7 @@ func (p *ControllerRegistor) getRunMethod(method string, context *beecontext.Con
|
||||
} else if m, ok = router.methods["*"]; ok {
|
||||
return m
|
||||
} else {
|
||||
return strings.Title(method)
|
||||
return ""
|
||||
}
|
||||
} else {
|
||||
return strings.Title(method)
|
||||
|
Loading…
Reference in New Issue
Block a user