1
0
Fork 0
mirror of https://github.com/gocsaf/csaf.git synced 2025-12-22 11:55:40 +01:00

Add extra http header support to downloader and checker.

This commit is contained in:
Sascha L. Teichmann 2023-01-25 16:45:05 +01:00
parent 732383561b
commit 51fba46893
7 changed files with 117 additions and 41 deletions

View file

@ -64,24 +64,30 @@ func (d *downloader) httpClient() util.Client {
}
}
var client util.Client
client := util.Client(&hClient)
// Add extra headers.
if len(d.opts.ExtraHeader) > 0 {
client = &util.HeaderClient{
Client: client,
Header: d.opts.ExtraHeader,
}
}
// Add optional URL logging.
if d.opts.Verbose {
client = &util.LoggingClient{Client: &hClient}
} else {
client = &hClient
client = &util.LoggingClient{Client: client}
}
if d.opts.Rate == nil {
d.client = client
return client
}
d.client = &util.LimitingClient{
Client: client,
Limiter: rate.NewLimiter(rate.Limit(*d.opts.Rate), 1),
// Add optional rate limiting.
if d.opts.Rate != nil {
client = &util.LimitingClient{
Client: client,
Limiter: rate.NewLimiter(rate.Limit(*d.opts.Rate), 1),
}
}
d.client = client
return d.client
}