This commit is contained in:
Łukasz Domeradzki
2025-08-10 03:05:24 +02:00
parent f54d30ff42
commit 4780031b87

View File

@@ -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;
}