diff --git a/ArchiSteamFarm/Web/WebBrowser.cs b/ArchiSteamFarm/Web/WebBrowser.cs index 01e90a21f..fd4a26f4f 100644 --- a/ArchiSteamFarm/Web/WebBrowser.cs +++ b/ArchiSteamFarm/Web/WebBrowser.cs @@ -103,19 +103,25 @@ public sealed class WebBrowser : IDisposable { byte connectionTimeout = ASF.GlobalConfig?.ConnectionTimeout ?? GlobalConfig.DefaultConnectionTimeout; HttpClient result = new(HttpMessageHandler, false) { + DefaultRequestHeaders = { + // Inform websites that we visit about our preference in language, if possible + AcceptLanguage = { + new StringWithQualityHeaderValue("en-US", 0.9), + new StringWithQualityHeaderValue("en", 0.8) + }, + + // Most web services expect that UserAgent is set, so we declare it globally + // If you by any chance came here with a very "clever" idea of hiding your ass by changing default ASF user-agent then here is a very good advice from me: don't, for your own safety - you've been warned + UserAgent = { + new ProductInfoHeaderValue(SharedInfo.PublicIdentifier, SharedInfo.Version.ToString()), + new ProductInfoHeaderValue($"({BuildInfo.Variant}; {OS.Version.Replace("(", "", StringComparison.Ordinal).Replace(")", "", StringComparison.Ordinal)}; +{SharedInfo.ProjectURL})") + } + }, + DefaultRequestVersion = HttpVersion.Version30, Timeout = TimeSpan.FromSeconds(extendedTimeout ? ExtendedTimeout : connectionTimeout) }; - // Most web services expect that UserAgent is set, so we declare it globally - // If you by any chance came here with a very "clever" idea of hiding your ass by changing default ASF user-agent then here is a very good advice from me: don't, for your own safety - you've been warned - result.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue(SharedInfo.PublicIdentifier, SharedInfo.Version.ToString())); - result.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue($"({BuildInfo.Variant}; {OS.Version.Replace("(", "", StringComparison.Ordinal).Replace(")", "", StringComparison.Ordinal)}; +{SharedInfo.ProjectURL})")); - - // Inform websites that we visit about our preference in language, if possible - result.DefaultRequestHeaders.AcceptLanguage.Add(new StringWithQualityHeaderValue("en-US", 0.9)); - result.DefaultRequestHeaders.AcceptLanguage.Add(new StringWithQualityHeaderValue("en", 0.8)); - return result; }