mirror of
https://github.com/aykhans/dodo.git
synced 2025-04-16 09:53:12 +00:00
Merge pull request #100 from aykhans/refactor/config
All checks were successful
golangci-lint / lint (push) Successful in 25s
All checks were successful
golangci-lint / lint (push) Successful in 25s
🔨 Add 'User-Agent' in 'SetDefaults' function
This commit is contained in:
commit
a170588574
@ -233,4 +233,5 @@ func (config *Config) SetDefaults() {
|
||||
if config.Yes == nil {
|
||||
config.Yes = utils.ToPtr(DefaultYes)
|
||||
}
|
||||
config.Headers.SetIfNotExists("User-Agent", DefaultUserAgent)
|
||||
}
|
||||
|
@ -166,9 +166,6 @@ func setRequestHeaders(req *fasthttp.Request, headers []types.KeyValue[string, s
|
||||
for _, header := range headers {
|
||||
req.Header.Add(header.Key, header.Value)
|
||||
}
|
||||
if req.Header.UserAgent() == nil {
|
||||
req.Header.SetUserAgent(config.DefaultUserAgent)
|
||||
}
|
||||
}
|
||||
|
||||
// setRequestCookies adds the cookies of the given request with the provided key-value pairs.
|
||||
|
@ -73,6 +73,15 @@ func (headers Headers) GetValue(key string) *[]string {
|
||||
return nil
|
||||
}
|
||||
|
||||
func (headers Headers) Has(key string) bool {
|
||||
for i := range headers {
|
||||
if headers[i].Key == key {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (headers *Headers) UnmarshalJSON(b []byte) error {
|
||||
var data []map[string]any
|
||||
if err := json.Unmarshal(b, &data); err != nil {
|
||||
@ -137,3 +146,11 @@ func (headers *Headers) Set(value string) error {
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (headers *Headers) SetIfNotExists(key string, value string) bool {
|
||||
if headers.Has(key) {
|
||||
return false
|
||||
}
|
||||
*headers = append(*headers, KeyValue[string, []string]{Key: key, Value: []string{value}})
|
||||
return true
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user