diff --git a/backend/services/controller/internal/api/api.go b/backend/services/controller/internal/api/api.go index dcecc77..5d4635d 100644 --- a/backend/services/controller/internal/api/api.go +++ b/backend/services/controller/internal/api/api.go @@ -3,6 +3,7 @@ package api import ( "encoding/json" "github.com/gorilla/mux" + "github.com/leandrofars/oktopus/internal/api/middleware" "github.com/leandrofars/oktopus/internal/db" "github.com/leandrofars/oktopus/internal/mtp" usp_msg "github.com/leandrofars/oktopus/internal/usp_message" @@ -45,6 +46,10 @@ func StartApi(a Api) { r.HandleFunc("/device/{sn}/del", a.deviceDeleteMsg).Methods("PUT") r.HandleFunc("/device/{sn}/set", a.deviceUpdateMsg).Methods("PUT") + r.Use(func(handler http.Handler) http.Handler { + return middleware.Middleware(handler) + }) + srv := &http.Server{ Addr: "0.0.0.0:" + a.Port, // Good practice to set timeouts to avoid Slowloris attacks. diff --git a/backend/services/controller/internal/api/middleware/middleware.go b/backend/services/controller/internal/api/middleware/middleware.go new file mode 100644 index 0000000..97edbe4 --- /dev/null +++ b/backend/services/controller/internal/api/middleware/middleware.go @@ -0,0 +1,12 @@ +package middleware + +import "net/http" + +func Middleware(next http.Handler) http.Handler { + return http.HandlerFunc( + func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "application/json") + next.ServeHTTP(w, r) + }, + ) +}