mirror of
https://github.com/langhuihui/monibuca.git
synced 2025-10-05 22:26:50 +08:00
fix: add cors to grpc gateway
This commit is contained in:
11
server.go
11
server.go
@@ -14,6 +14,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/shirou/gopsutil/v3/cpu"
|
"github.com/shirou/gopsutil/v3/cpu"
|
||||||
|
"google.golang.org/protobuf/proto"
|
||||||
|
|
||||||
"m7s.live/m7s/v5/pkg/task"
|
"m7s.live/m7s/v5/pkg/task"
|
||||||
|
|
||||||
@@ -179,7 +180,15 @@ func (s *Server) Start() (err error) {
|
|||||||
s.LogHandler.SetLevel(slog.LevelDebug)
|
s.LogHandler.SetLevel(slog.LevelDebug)
|
||||||
s.LogHandler.Add(defaultLogHandler)
|
s.LogHandler.Add(defaultLogHandler)
|
||||||
s.Logger = slog.New(&s.LogHandler).With("server", s.ID)
|
s.Logger = slog.New(&s.LogHandler).With("server", s.ID)
|
||||||
mux := runtime.NewServeMux(runtime.WithMarshalerOption("text/plain", &pb.TextPlain{}), runtime.WithRoutingErrorHandler(func(_ context.Context, _ *runtime.ServeMux, _ runtime.Marshaler, w http.ResponseWriter, r *http.Request, _ int) {
|
mux := runtime.NewServeMux(runtime.WithMarshalerOption("text/plain", &pb.TextPlain{}), runtime.WithForwardResponseOption(func(ctx context.Context, w http.ResponseWriter, m proto.Message) error {
|
||||||
|
header := w.Header()
|
||||||
|
header.Set("Access-Control-Allow-Credentials", "true")
|
||||||
|
header.Set("Cross-Origin-Resource-Policy", "cross-origin")
|
||||||
|
header.Set("Access-Control-Allow-Headers", "Content-Type,Access-Token")
|
||||||
|
header.Set("Access-Control-Allow-Private-Network", "true")
|
||||||
|
header.Set("Access-Control-Allow-Origin", "*")
|
||||||
|
return nil
|
||||||
|
}), runtime.WithRoutingErrorHandler(func(_ context.Context, _ *runtime.ServeMux, _ runtime.Marshaler, w http.ResponseWriter, r *http.Request, _ int) {
|
||||||
httpConf.GetHttpMux().ServeHTTP(w, r)
|
httpConf.GetHttpMux().ServeHTTP(w, r)
|
||||||
}))
|
}))
|
||||||
httpConf.SetMux(mux)
|
httpConf.SetMux(mux)
|
||||||
|
Reference in New Issue
Block a user