Initial cloud-services repo - gateway service + pkg modules
This commit is contained in:
24
pkg/httphandlers/method_checker.go
Normal file
24
pkg/httphandlers/method_checker.go
Normal file
@@ -0,0 +1,24 @@
|
||||
package httphandlers
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
|
||||
"fiskerinc.com/modules/utils"
|
||||
)
|
||||
|
||||
// MethodAll to handle all http method
|
||||
const MethodAll = "*"
|
||||
|
||||
// CheckMethod middleware to enforce method
|
||||
func CheckMethod(method string, next http.HandlerFunc) http.HandlerFunc {
|
||||
wrapper := func(w http.ResponseWriter, r *http.Request) {
|
||||
if method != r.Method && method != MethodAll {
|
||||
utils.RespError(w, http.StatusBadRequest, fmt.Sprintf("Not %s method", method))
|
||||
return
|
||||
}
|
||||
next.ServeHTTP(w, r)
|
||||
}
|
||||
|
||||
return wrapper
|
||||
}
|
||||
Reference in New Issue
Block a user