Merge pull request #12578 from socaa/post-request

Handling http POST requests added to Resource Consumer
This commit is contained in:
Piotr Szczesniak 2015-08-12 12:06:56 +02:00
commit 7837cf1ae3

View File

@ -24,6 +24,7 @@ import (
) )
const ( const (
badRequest = "Bad request. Not a POST request"
unknownFunction = "unknown function" unknownFunction = "unknown function"
incorrectFunctionArgument = "incorrect function argument" incorrectFunctionArgument = "incorrect function argument"
notGivenFunctionArgument = "not given function argument" notGivenFunctionArgument = "not given function argument"
@ -38,20 +39,22 @@ const (
type ResourceConsumerHandler struct{} type ResourceConsumerHandler struct{}
func (handler ResourceConsumerHandler) ServeHTTP(w http.ResponseWriter, req *http.Request) { func (handler ResourceConsumerHandler) ServeHTTP(w http.ResponseWriter, req *http.Request) {
// parsing raw query if req.Method != "POST" {
query, err := url.ParseQuery(req.URL.RawQuery) http.Error(w, badRequest, http.StatusBadRequest)
if err != nil { }
// parsing POST request data and URL data
if err := req.ParseForm(); err != nil {
http.Error(w, err.Error(), http.StatusBadRequest) http.Error(w, err.Error(), http.StatusBadRequest)
return return
} }
// handle consumeCPU // handle consumeCPU
if req.URL.Path == consumeCPUAddress { if req.URL.Path == consumeCPUAddress {
handler.handleConsumeCPU(w, query) handler.handleConsumeCPU(w, req.PostForm)
return return
} }
// handle consumeMem // handle consumeMem
if req.URL.Path == consumeMemAddress { if req.URL.Path == consumeMemAddress {
handler.handleConsumeMem(w, query) handler.handleConsumeMem(w, req.PostForm)
return return
} }
// handle getCurrentStatus // handle getCurrentStatus