Files
faas/gateway/handlers/cors.go
Alex Ellis 78a4580ead Allow CORS to GitHub raw
Signed-off-by: Alex Ellis <alexellis2@gmail.com>
2017-11-29 09:48:58 +01:00

25 lines
633 B
Go

package handlers
import "net/http"
type CorsHandler struct {
Upstream *http.Handler
AllowedHost string
}
func (c CorsHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {
// https://raw.githubusercontent.com/openfaas/store/master/store.json
w.Header().Set("Access-Control-Allow-Headers", "Content-Type")
w.Header().Set("Access-Control-Allow-Methods", "GET")
w.Header().Set("Access-Control-Allow-Origin", c.AllowedHost)
(*c.Upstream).ServeHTTP(w, r)
}
func DecorateWithCORS(upstream http.Handler, allowedHost string) http.Handler {
return CorsHandler{
Upstream: &upstream,
AllowedHost: allowedHost,
}
}