gtsocial-umbx

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit d6f4d196c978d81041ea99a32e2d6f63b0639472
parent 746f3fa4e65ac2806955a4be8e969dd8a2636ccf
Author: Daniele Sluijters <daenney@users.noreply.github.com>
Date:   Sat, 26 Nov 2022 21:15:19 +0100

Tweak the User-Agent a bit (#1153)

* [bugfix] Use AccountDomain for user agent

By using the account domain we can pinpoint the source of the request
more accurately when looking at the User-Agent header.

* [chore] Align user-agent header with spec

Based on RFC 7231, our User-Agent header doesn't quite match. It seems
to always want Name [/ Version] pairs, with comments in parenthesis and
multiple comments separated by a semicolon.

Align our UA with that, using application name first by itself in case
someone has customised it with the source instance in a comment. Follow
that up with gotosocial/<version> and a comment pointing at the source
code.

This also drops the mention of gofed/activity since a fork is in use.
Diffstat:
Minternal/transport/controller.go | 5+++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/internal/transport/controller.go b/internal/transport/controller.go @@ -59,7 +59,8 @@ type controller struct { // NewController returns an implementation of the Controller interface for creating new transports func NewController(db db.DB, federatingDB federatingdb.DB, clock pub.Clock, client pub.HttpClient) Controller { applicationName := config.GetApplicationName() - host := config.GetHost() + host := config.GetAccountDomain() + proto := config.GetProtocol() version := config.GetSoftwareVersion() c := &controller{ @@ -69,7 +70,7 @@ func NewController(db db.DB, federatingDB federatingdb.DB, clock pub.Clock, clie client: client, trspCache: cache.New[string, *transport](0, 100, 0), badHosts: cache.New[string, struct{}](0, 1000, 0), - userAgent: fmt.Sprintf("%s; %s (gofed/activity gotosocial-%s)", applicationName, host, version), + userAgent: fmt.Sprintf("%s (+%s://%s) gotosocial/%s", applicationName, proto, host, version), } // Transport cache has TTL=1hr freq=1min