mirror of https://github.com/miniflux/v2.git
Update Miniflux man page with UserAgent setting
This commit is contained in:
parent
52a626d7b9
commit
eeeea74bf1
|
@ -52,6 +52,7 @@ const (
|
||||||
defaultHTTPClientTimeout = 20
|
defaultHTTPClientTimeout = 20
|
||||||
defaultHTTPClientMaxBodySize = 15
|
defaultHTTPClientMaxBodySize = 15
|
||||||
defaultHTTPClientProxy = ""
|
defaultHTTPClientProxy = ""
|
||||||
|
defaultHTTPClientUserAgent = ""
|
||||||
defaultAuthProxyHeader = ""
|
defaultAuthProxyHeader = ""
|
||||||
defaultAuthProxyUserCreation = false
|
defaultAuthProxyUserCreation = false
|
||||||
defaultMaintenanceMode = false
|
defaultMaintenanceMode = false
|
||||||
|
@ -59,7 +60,6 @@ const (
|
||||||
defaultMetricsCollector = false
|
defaultMetricsCollector = false
|
||||||
defaultMetricsRefreshInterval = 60
|
defaultMetricsRefreshInterval = 60
|
||||||
defaultMetricsAllowedNetworks = "127.0.0.1/8"
|
defaultMetricsAllowedNetworks = "127.0.0.1/8"
|
||||||
defaultUserAgent = ""
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Options contains configuration options.
|
// Options contains configuration options.
|
||||||
|
@ -106,6 +106,7 @@ type Options struct {
|
||||||
httpClientTimeout int
|
httpClientTimeout int
|
||||||
httpClientMaxBodySize int64
|
httpClientMaxBodySize int64
|
||||||
httpClientProxy string
|
httpClientProxy string
|
||||||
|
httpClientUserAgent string
|
||||||
authProxyHeader string
|
authProxyHeader string
|
||||||
authProxyUserCreation bool
|
authProxyUserCreation bool
|
||||||
maintenanceMode bool
|
maintenanceMode bool
|
||||||
|
@ -113,7 +114,6 @@ type Options struct {
|
||||||
metricsCollector bool
|
metricsCollector bool
|
||||||
metricsRefreshInterval int
|
metricsRefreshInterval int
|
||||||
metricsAllowedNetworks []string
|
metricsAllowedNetworks []string
|
||||||
userAgent string
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewOptions returns Options with default values.
|
// NewOptions returns Options with default values.
|
||||||
|
@ -166,7 +166,7 @@ func NewOptions() *Options {
|
||||||
metricsCollector: defaultMetricsCollector,
|
metricsCollector: defaultMetricsCollector,
|
||||||
metricsRefreshInterval: defaultMetricsRefreshInterval,
|
metricsRefreshInterval: defaultMetricsRefreshInterval,
|
||||||
metricsAllowedNetworks: []string{defaultMetricsAllowedNetworks},
|
metricsAllowedNetworks: []string{defaultMetricsAllowedNetworks},
|
||||||
userAgent: defaultUserAgent,
|
httpClientUserAgent: defaultHTTPClientUserAgent,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -425,9 +425,9 @@ func (o *Options) MetricsAllowedNetworks() []string {
|
||||||
return o.metricsAllowedNetworks
|
return o.metricsAllowedNetworks
|
||||||
}
|
}
|
||||||
|
|
||||||
// UserAgent returns the global User-Agent header for miniflux.
|
// HTTPClientUserAgent returns the global User-Agent header for miniflux.
|
||||||
func (o *Options) UserAgent() string {
|
func (o *Options) HTTPClientUserAgent() string {
|
||||||
return o.userAgent
|
return o.httpClientUserAgent
|
||||||
}
|
}
|
||||||
|
|
||||||
func (o *Options) String() string {
|
func (o *Options) String() string {
|
||||||
|
@ -474,6 +474,7 @@ func (o *Options) String() string {
|
||||||
builder.WriteString(fmt.Sprintf("HTTP_CLIENT_TIMEOUT: %v\n", o.httpClientTimeout))
|
builder.WriteString(fmt.Sprintf("HTTP_CLIENT_TIMEOUT: %v\n", o.httpClientTimeout))
|
||||||
builder.WriteString(fmt.Sprintf("HTTP_CLIENT_MAX_BODY_SIZE: %v\n", o.httpClientMaxBodySize))
|
builder.WriteString(fmt.Sprintf("HTTP_CLIENT_MAX_BODY_SIZE: %v\n", o.httpClientMaxBodySize))
|
||||||
builder.WriteString(fmt.Sprintf("HTTP_CLIENT_PROXY: %v\n", o.httpClientProxy))
|
builder.WriteString(fmt.Sprintf("HTTP_CLIENT_PROXY: %v\n", o.httpClientProxy))
|
||||||
|
builder.WriteString(fmt.Sprintf("HTTP_CLIENT_USER_AGENT: %v\n", o.httpClientUserAgent))
|
||||||
builder.WriteString(fmt.Sprintf("AUTH_PROXY_HEADER: %v\n", o.authProxyHeader))
|
builder.WriteString(fmt.Sprintf("AUTH_PROXY_HEADER: %v\n", o.authProxyHeader))
|
||||||
builder.WriteString(fmt.Sprintf("AUTH_PROXY_USER_CREATION: %v\n", o.authProxyUserCreation))
|
builder.WriteString(fmt.Sprintf("AUTH_PROXY_USER_CREATION: %v\n", o.authProxyUserCreation))
|
||||||
builder.WriteString(fmt.Sprintf("MAINTENANCE_MODE: %v\n", o.maintenanceMode))
|
builder.WriteString(fmt.Sprintf("MAINTENANCE_MODE: %v\n", o.maintenanceMode))
|
||||||
|
@ -481,6 +482,5 @@ func (o *Options) String() string {
|
||||||
builder.WriteString(fmt.Sprintf("METRICS_COLLECTOR: %v\n", o.metricsCollector))
|
builder.WriteString(fmt.Sprintf("METRICS_COLLECTOR: %v\n", o.metricsCollector))
|
||||||
builder.WriteString(fmt.Sprintf("METRICS_REFRESH_INTERVAL: %v\n", o.metricsRefreshInterval))
|
builder.WriteString(fmt.Sprintf("METRICS_REFRESH_INTERVAL: %v\n", o.metricsRefreshInterval))
|
||||||
builder.WriteString(fmt.Sprintf("METRICS_ALLOWED_NETWORKS: %v\n", o.metricsAllowedNetworks))
|
builder.WriteString(fmt.Sprintf("METRICS_ALLOWED_NETWORKS: %v\n", o.metricsAllowedNetworks))
|
||||||
builder.WriteString(fmt.Sprintf("USER_AGENT: %v\n", o.userAgent))
|
|
||||||
return builder.String()
|
return builder.String()
|
||||||
}
|
}
|
||||||
|
|
|
@ -170,6 +170,8 @@ func (p *Parser) parseLines(lines []string) (err error) {
|
||||||
p.opts.httpClientMaxBodySize = int64(parseInt(value, defaultHTTPClientMaxBodySize) * 1024 * 1024)
|
p.opts.httpClientMaxBodySize = int64(parseInt(value, defaultHTTPClientMaxBodySize) * 1024 * 1024)
|
||||||
case "HTTP_CLIENT_PROXY":
|
case "HTTP_CLIENT_PROXY":
|
||||||
p.opts.httpClientProxy = parseString(value, defaultHTTPClientProxy)
|
p.opts.httpClientProxy = parseString(value, defaultHTTPClientProxy)
|
||||||
|
case "HTTP_CLIENT_USER_AGENT":
|
||||||
|
p.opts.httpClientUserAgent = parseString(value, defaultHTTPClientUserAgent)
|
||||||
case "AUTH_PROXY_HEADER":
|
case "AUTH_PROXY_HEADER":
|
||||||
p.opts.authProxyHeader = parseString(value, defaultAuthProxyHeader)
|
p.opts.authProxyHeader = parseString(value, defaultAuthProxyHeader)
|
||||||
case "AUTH_PROXY_USER_CREATION":
|
case "AUTH_PROXY_USER_CREATION":
|
||||||
|
@ -184,8 +186,6 @@ func (p *Parser) parseLines(lines []string) (err error) {
|
||||||
p.opts.metricsRefreshInterval = parseInt(value, defaultMetricsRefreshInterval)
|
p.opts.metricsRefreshInterval = parseInt(value, defaultMetricsRefreshInterval)
|
||||||
case "METRICS_ALLOWED_NETWORKS":
|
case "METRICS_ALLOWED_NETWORKS":
|
||||||
p.opts.metricsAllowedNetworks = parseStringList(value, []string{defaultMetricsAllowedNetworks})
|
p.opts.metricsAllowedNetworks = parseStringList(value, []string{defaultMetricsAllowedNetworks})
|
||||||
case "USER_AGENT":
|
|
||||||
p.opts.userAgent = parseString(value, defaultUserAgent)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -72,7 +72,7 @@ func New(url string) *Client {
|
||||||
|
|
||||||
// NewClientWithConfig initializes a new HTTP client with application config options.
|
// NewClientWithConfig initializes a new HTTP client with application config options.
|
||||||
func NewClientWithConfig(url string, opts *config.Options) *Client {
|
func NewClientWithConfig(url string, opts *config.Options) *Client {
|
||||||
userAgent := opts.UserAgent()
|
userAgent := opts.HTTPClientUserAgent()
|
||||||
if userAgent == "" {
|
if userAgent == "" {
|
||||||
userAgent = DefaultUserAgent
|
userAgent = DefaultUserAgent
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,7 +62,7 @@ func TestClientRequestUserAgent(t *testing.T) {
|
||||||
}
|
}
|
||||||
|
|
||||||
userAgent := "Custom User Agent"
|
userAgent := "Custom User Agent"
|
||||||
os.Setenv("USER_AGENT", userAgent)
|
os.Setenv("HTTP_CLIENT_USER_AGENT", userAgent)
|
||||||
opts, err := config.NewParser().ParseEnvironmentVariables()
|
opts, err := config.NewParser().ParseEnvironmentVariables()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf(`Parsing config failed: %v`, err)
|
t.Fatalf(`Parsing config failed: %v`, err)
|
||||||
|
|
|
@ -277,6 +277,11 @@ Proxy URL for HTTP client\&.
|
||||||
.br
|
.br
|
||||||
Default is empty\&.
|
Default is empty\&.
|
||||||
.TP
|
.TP
|
||||||
|
.B HTTP_CLIENT_USER_AGENT
|
||||||
|
The default User-Agent header to use for the HTTP client. Can be overridden in per-feed settings\&.
|
||||||
|
.br
|
||||||
|
Default is empty. When empty, Miniflux uses a default User-Agent that includes the Miniflux version\&.
|
||||||
|
.TP
|
||||||
.B AUTH_PROXY_HEADER
|
.B AUTH_PROXY_HEADER
|
||||||
Proxy authentication HTTP header\&.
|
Proxy authentication HTTP header\&.
|
||||||
.TP
|
.TP
|
||||||
|
|
Loading…
Reference in New Issue