Make CORS handling configurable

Signed-off-by: Quincy Mast <email.quincymast@gmail.com>
This commit is contained in:
Quincy Mast 2024-12-31 10:58:43 -05:00
parent 1b29e6ae8f
commit 1e3d10c1ae
2 changed files with 9 additions and 5 deletions

13
api.go
View File

@ -56,11 +56,14 @@ func (a apiServer) Register(r *mux.Router) {
}
func (a apiServer) handleCreate(res http.ResponseWriter, r *http.Request) {
res.Header().Set("Access-Control-Allow-Origin", "*")
res.Header().Set("Access-Control-Allow-Methods", "POST, OPTIONS")
if r.Method == http.MethodOptions {
res.WriteHeader(http.StatusNoContent)
return
if cust.AddCORSHeaders {
res.Header().Set("Access-Control-Allow-Origin", "*")
res.Header().Set("Access-Control-Allow-Methods", "POST, OPTIONS")
if r.Method == http.MethodOptions {
res.WriteHeader(http.StatusNoContent)
return
}
}
if cust.MaxSecretSize > 0 {

View File

@ -41,6 +41,7 @@ type (
MetricsAllowedSubnets []string `json:"-" yaml:"metricsAllowedSubnets"`
OverlayFSPath string `json:"-" yaml:"overlayFSPath"`
UseFormalLanguage bool `json:"-" yaml:"useFormalLanguage"`
AddCORSHeaders bool `json:"-" yaml:"addCORSHeaders"`
FooterLinks []FooterLink `json:"footerLinks,omitempty" yaml:"footerLinks"`
}