refactoring of code
This commit is contained in:
@@ -34,3 +34,14 @@ func doesExist(tyName string) bool {
|
|||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
func GetMiddleware(rule string, middlewares []Middleware) (Middleware, error) {
|
||||||
|
for _, m := range middlewares {
|
||||||
|
if strings.Contains(rule, m.Name) {
|
||||||
|
|
||||||
|
return m, nil
|
||||||
|
}
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
return Middleware{}, errors.New("no middleware found with name " + rule)
|
||||||
|
}
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ func (blockList AccessListMiddleware) AccessMiddleware(next http.Handler) http.H
|
|||||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||||
for _, block := range blockList.List {
|
for _, block := range blockList.List {
|
||||||
if isPathBlocked(r.URL.Path, util.ParseURLPath(blockList.Path+block)) {
|
if isPathBlocked(r.URL.Path, util.ParseURLPath(blockList.Path+block)) {
|
||||||
logger.Debug("%s: access to %s is forbidden", getRealIP(r), r.URL.Path)
|
logger.Debug("%s: %s access forbidden", getRealIP(r), r.URL.Path)
|
||||||
w.Header().Set("Content-Type", "application/json")
|
w.Header().Set("Content-Type", "application/json")
|
||||||
w.WriteHeader(http.StatusNotFound)
|
w.WriteHeader(http.StatusNotFound)
|
||||||
err := json.NewEncoder(w).Encode(ProxyResponseError{
|
err := json.NewEncoder(w).Encode(ProxyResponseError{
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ func TestReadMiddleware(t *testing.T) {
|
|||||||
|
|
||||||
func TestFoundMiddleware(t *testing.T) {
|
func TestFoundMiddleware(t *testing.T) {
|
||||||
middlewares := getMiddlewares(t)
|
middlewares := getMiddlewares(t)
|
||||||
middleware, err := getAuthMiddleware("jwt", middlewares)
|
middleware, err := GetMiddleware("jwt", middlewares)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("Error getting middleware %v", err)
|
t.Errorf("Error getting middleware %v", err)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user