From 498f81aad3dac87f3b59ff4620317d7b8bacd451 Mon Sep 17 00:00:00 2001 From: joshua <54235339+sujoshua@users.noreply.github.com> Date: Wed, 24 Dec 2025 23:10:38 +0800 Subject: [PATCH] feat: add header support for rule provider (#2463) --- rules/provider/parse.go | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/rules/provider/parse.go b/rules/provider/parse.go index 496a2a09..8f951612 100644 --- a/rules/provider/parse.go +++ b/rules/provider/parse.go @@ -12,15 +12,16 @@ import ( ) type ruleProviderSchema struct { - Type string `provider:"type"` - Behavior string `provider:"behavior"` - Path string `provider:"path,omitempty"` - URL string `provider:"url,omitempty"` - Proxy string `provider:"proxy,omitempty"` - Format string `provider:"format,omitempty"` - Interval int `provider:"interval,omitempty"` - SizeLimit int64 `provider:"size-limit,omitempty"` - Payload []string `provider:"payload,omitempty"` + Type string `provider:"type"` + Behavior string `provider:"behavior"` + Path string `provider:"path,omitempty"` + URL string `provider:"url,omitempty"` + Proxy string `provider:"proxy,omitempty"` + Format string `provider:"format,omitempty"` + Interval int `provider:"interval,omitempty"` + SizeLimit int64 `provider:"size-limit,omitempty"` + Payload []string `provider:"payload,omitempty"` + Header map[string][]string `provider:"header,omitempty"` } func ParseRuleProvider(name string, mapping map[string]any, parse common.ParseRuleFunc) (P.RuleProvider, error) { @@ -54,7 +55,7 @@ func ParseRuleProvider(name string, mapping map[string]any, parse common.ParseRu return nil, C.Path.ErrNotSafePath(path) } } - vehicle = resource.NewHTTPVehicle(schema.URL, path, schema.Proxy, nil, resource.DefaultHttpTimeout, schema.SizeLimit) + vehicle = resource.NewHTTPVehicle(schema.URL, path, schema.Proxy, schema.Header, resource.DefaultHttpTimeout, schema.SizeLimit) case "inline": return NewInlineProvider(name, behavior, schema.Payload, parse), nil default: