Il est facile de définir un agent utilisateur sur un HttpRequest, mais souvent, je souhaite utiliser un seul HttpClient et utiliser le même agent utilisateur à chaque fois, plutôt que de le définir à chaque demande.
Vous pouvez résoudre ceci facilement en utilisant:
HttpClient _client = new HttpClient();
_client.DefaultRequestHeaders.Add("User-Agent", "C# App");
Utiliser DefaultRequestHeaders.Add(...)
n'a pas fonctionné pour moi.
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.UserAgent.ParseAdd("Mozilla/5.0 (compatible; AcmeInc/1.0");
Ce qui suit a fonctionné pour moi dans une bibliothèque .NET Standard 2.0:
HttpClient client = new HttpClient();
ProductHeaderValue header = new ProductHeaderValue("MyAwesomeLibrary", Assembly.GetExecutingAssembly().GetName().Version.ToString());
ProductInfoHeaderValue userAgent = new ProductInfoHeaderValue(header);
client.DefaultRequestHeaders.UserAgent.Add(userAgent);
// User-Agent: MyAwesomeLibrary/1.0.0.0