github.com/angryronald/go-kit@v0.0.0-20240505173814-ff2bd9c79dbf/net/http/request.middleware.go (about) 1 package http 2 3 import ( 4 "context" 5 "net/http" 6 "os" 7 8 "github.com/angryronald/go-kit/appcontext" 9 "github.com/angryronald/go-kit/constant" 10 ) 11 12 func LoadEnvironmentIntoRequest(next http.Handler) http.Handler { 13 return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { 14 env := constant.EnvironmentType(os.Getenv(constant.ENVIRONMENT_KEY)) 15 16 r = r.WithContext(context.WithValue(r.Context(), appcontext.KeyEnvironment, string(env))) 17 18 next.ServeHTTP(w, r) 19 }) 20 }