// Code scaffolded by goctl. Safe to edit. // goctl 1.9.2 package middleware import "net/http" type CorsMiddleware struct { } func NewCorsMiddleware() *CorsMiddleware { return &CorsMiddleware{} } func (m *CorsMiddleware) Handle(next http.HandlerFunc) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { // Set CORS headers w.Header().Set("Access-Control-Allow-Origin", "*") w.Header().Set("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS") w.Header().Set("Access-Control-Allow-Headers", "Content-Type, Authorization") // Handle preflight requests if r.Method == "OPTIONS" { w.WriteHeader(http.StatusOK) return } next(w, r) } }