Как проверить правильность пользовательского агента перед вызовом HTTP-запроса клиента? - PullRequest
0 голосов
/ 08 мая 2020

У меня есть список пользовательских агентов, которые я использую при создании запросов HTTP-клиентов.

Иногда некоторые из этих пользовательских агентов выдают мне ошибку:

client.DefaultRequestHeaders.Add("user-agent", currentUserAgent);
HttpResponseMessage responseMessage = await client.GetAsync($"{pageUrl}");

Я получаю сообщение об ошибке типа :

Формат значения 'Mozilla / 5.0 (iPad; U; CPU OS 3_2, например Ma c OS X; en-us) AppleWebKit / 531.21.10 (K HTML, например Gecko) Версия / 4.0.4Mobile / 7B334b Safari / 531.21.10 'недействительна

Можно ли предварительно проверить агент пользователя?

1 Ответ

0 голосов
/ 08 мая 2020

Вы можете использовать следующее выражение Regex для проверки строки пользовательского агента перед назначением:

Mozilla\/5\.0 \(Linux; U; Android (\d+\.)?(\d+\.)?(\*|\d+); [a-z]{2}-[a-z]{2}; (AFTA|AFTN|AFTS|AFTB|AFTT|AFTM|AFTKMST12|AFTRS) Build\/([A-Z0-9]+)\) AppleWebKit\/(\d+\.)?(\*|\d+) \(KHTML, like Gecko\) Version\/4\.0 Mobile Safari\/(\d+\.)?(\*|\d+)

Пожалуйста, проверьте исходный ответ: ЗДЕСЬ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...