fix(server): allow align block header with skip check heaader in grpc server (#24068)

Co-authored-by: Alex | Interchain Labs <alex@interchainlabs.io>
Co-authored-by: Tyler <48813565+technicallyty@users.noreply.github.com>
This commit is contained in:
Đông Liều
2025-03-25 16:54:43 +00:00
committed by GitHub
co-authored by Alex | Interchain Labs Tyler
parent d6fca6a5b6
commit 2be528f04f
6 changed files with 32 additions and 13 deletions
+8 -4
View File
@@ -139,6 +139,9 @@ type GRPCConfig struct {
// MaxSendMsgSize defines the max message size in bytes the server can send.
// The default value is math.MaxInt32.
MaxSendMsgSize int `mapstructure:"max-send-msg-size"`
// SkipCheckHeader defines if the gRPC server should bypass check header.
SkipCheckHeader bool `mapstructure:"skip-check-header"`
}
// GRPCWebConfig defines configuration for the gRPC-web server.
@@ -244,10 +247,11 @@ func DefaultConfig() *Config {
RPCMaxBodyBytes: 1000000,
},
GRPC: GRPCConfig{
Enable: true,
Address: DefaultGRPCAddress,
MaxRecvMsgSize: DefaultGRPCMaxRecvMsgSize,
MaxSendMsgSize: DefaultGRPCMaxSendMsgSize,
Enable: true,
Address: DefaultGRPCAddress,
MaxRecvMsgSize: DefaultGRPCMaxRecvMsgSize,
MaxSendMsgSize: DefaultGRPCMaxSendMsgSize,
SkipCheckHeader: false,
},
GRPCWeb: GRPCWebConfig{
Enable: true,
+1 -1
View File
@@ -38,7 +38,7 @@ func NewGRPCServer(clientCtx client.Context, app types.Application, cfg config.G
grpc.MaxRecvMsgSize(maxRecvMsgSize),
)
app.RegisterGRPCServer(grpcSrv)
app.RegisterGRPCServerWithSkipCheckHeader(grpcSrv, cfg.SkipCheckHeader)
// Reflection allows consumers to build dynamic clients that can write to any
// Cosmos SDK application without relying on application packages at compile
+5 -4
View File
@@ -91,10 +91,11 @@ const (
FlagAPIEnableUnsafeCORS = "api.enabled-unsafe-cors"
// gRPC-related flags
flagGRPCOnly = "grpc-only"
flagGRPCEnable = "grpc.enable"
flagGRPCAddress = "grpc.address"
flagGRPCWebEnable = "grpc-web.enable"
flagGRPCOnly = "grpc-only"
flagGRPCEnable = "grpc.enable"
flagGRPCAddress = "grpc.address"
flagGRPCWebEnable = "grpc-web.enable"
flagGRPCSkipCheckHeader = "grpc.skip-check-header"
// mempool flags
FlagMempoolMaxTxs = "mempool.max-txs"
+3 -3
View File
@@ -39,9 +39,9 @@ type (
RegisterAPIRoutes(*api.Server, config.APIConfig)
// RegisterGRPCServer registers gRPC services directly with the gRPC
// server.
RegisterGRPCServer(grpc.Server)
// RegisterGRPCServerWithSkipCheckHeader registers gRPC services directly with the gRPC
// server and bypass check header flag.
RegisterGRPCServerWithSkipCheckHeader(grpc.Server, bool)
// RegisterTxService registers the gRPC Query service for tx (such as tx
// simulation, fetching txs by hash...).