diff --git a/internal/api/api.go b/internal/api/api.go index 64859dce58..6a29364266 100644 --- a/internal/api/api.go +++ b/internal/api/api.go @@ -98,7 +98,13 @@ func (a *API) routeGRPC() { } func (a *API) routeGRPCWeb(router *mux.Router) { - router.NewRoute().HeadersRegexp("Content-Type", "application/grpc-web.*").Handler( + router.NewRoute().MatcherFunc( + func(r *http.Request, _ *mux.RouteMatch) bool { + if strings.Contains(r.Header.Get("content-type"), "application/grpc-web+") { + return true + } + return strings.Contains(r.Header.Get("access-control-request-headers"), "x-grpc-web") + }).Handler( grpcweb.WrapServer(a.grpcServer, grpcweb.WithAllowedRequestHeaders( []string{