From d65abd3e6f57d206d1515c7cb0a6d2da3f640a83 Mon Sep 17 00:00:00 2001 From: "Gustavo L de Mello (Guz)" Date: Tue, 22 Oct 2024 09:02:58 -0300 Subject: [PATCH] feat(cache,middlewares): cache middlewares --- app/app.go | 9 +++++++-- router/middleware/cache.go | 12 ++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 router/middleware/cache.go diff --git a/app/app.go b/app/app.go index a969268..13614d1 100644 --- a/app/app.go +++ b/app/app.go @@ -61,10 +61,15 @@ func (a *App) Run() { r := router.NewRouter() r.Use(mlogger.Wrap) - if a.dev { - r.Use(middleware.DevMiddleware) + if a.dev { + logger.Info("RUNNING IN DEVELOPMENT MODE") + + r.Use(middleware.DevMiddleware) r.Handle("/_dev", devPages.Routes()) + + } else { + r.Use(middleware.CacheMiddleware) } r.Handle("/assets/", a.assets) diff --git a/router/middleware/cache.go b/router/middleware/cache.go new file mode 100644 index 0000000..78fe291 --- /dev/null +++ b/router/middleware/cache.go @@ -0,0 +1,12 @@ +package middleware + +import ( + "net/http" +) + +func CacheMiddleware(next http.Handler) http.Handler { + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Cache-Control", "max-age=604800, stale-while-revalidate=86400, public") + next.ServeHTTP(w, r) + }) +}