fix handler strip path

This commit is contained in:
Ryan McGuire 2025-03-26 08:30:51 -04:00
parent b44b6a331c
commit f8279d9653
3 changed files with 12 additions and 4 deletions

View File

@ -2,6 +2,7 @@ package grpc
import (
"context"
"errors"
"fmt"
"net"
@ -29,8 +30,15 @@ func (a *appGRPCServer) registerServiceGatewayHandlers(ctx context.Context, serv
clientConn := a.GetClientConn(ctx)
var errs error
for _, registerGW := range service.GwRegistrationFuncs {
registerGW(ctx, a.gatewayMux, clientConn)
errs = errors.Join(errs, registerGW(ctx, a.gatewayMux, clientConn))
a.logger.Debug().Any("fwo", a.gatewayMux.GetForwardResponseOptions()).
Msg("calling gateway registration func")
}
if errs != nil {
panic(errs)
}
}

View File

@ -10,8 +10,8 @@ import (
)
type GRPCOpts struct {
*config.GRPCConfig
*AppGRPC
*config.GRPCConfig // Settings configurable by env or yaml
*AppGRPC // Settings provided in code
}
type AppGRPC struct {

View File

@ -69,7 +69,7 @@ func prepHTTPServer(opts *opts.AppHTTP) *http.Server {
// if enabled, the path prefix is stripped before
// requests are sent to the handler
if h.StripPrefix {
h.Handler = http.StripPrefix(h.Prefix, h.Handler)
h.Handler = http.StripPrefix(h.Prefix[:len(h.Prefix)-1], h.Handler)
}
mux.Handle(h.Prefix, h.Handler)
}