forked from tangled.org/core
Monorepo for Tangled — https://tangled.org

knotserver: add cors headers as a middleware function

Signed-off-by: @nekomimi.pet <ana@nekoimimi.pet>

Changed files
+18
knotserver
+18
knotserver/middleware.go
···
)
})
}
···
)
})
}
+
+
func (h *Knot) CORS(next http.Handler) http.Handler {
+
return http.HandlerFunc(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")
+
w.Header().Set("Access-Control-Max-Age", "86400")
+
+
// Handle preflight requests
+
if r.Method == "OPTIONS" {
+
w.WriteHeader(http.StatusOK)
+
return
+
}
+
+
next.ServeHTTP(w, r)
+
})
+
}