HttpWebRequest.UserAgent: что он делает

Я прочитал этот MSDN, как об этом, и запустил его пример. http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.useragent.aspx

когда я меняю uSerAgnet на что-то вроде «бла», вывод неправильный, но когда я использую то же самое, что и в примере, даже когда я комментирую строку кода, устанавливающую UserASgent, вывод правильный.

что такое UserAgent вообще? когда я должен установить его? Как узнать, какое значение я должен установить?

Благодарность


person Bohn    schedule 16.06.2010    source источник


Ответы (1)


Пользовательский агент используется для идентификации клиента, операционной системы и т. д. Чаще всего он используется в браузерах. Вы можете использовать пользовательский агент, чтобы указать, кто вы, и веб-сервер может вернуть ответ с данными, подходящими для вашего клиента. Например, мой пользовательский агент, который я использовал для доступа к этому сайту: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.70 Safari/533.4 Если бы я вместо этого был поисковым роботом, я бы использовал что-то другое, что-то, что веб-сервер идентифицировал бы как поисковый робот, и веб-сервер (веб-разработчик) мог бы вернуть оптимизированная страница для индексации.

Если вам это действительно не нужно, я бы посоветовал не придумывать собственный пользовательский агент, отсутствие стандартизации является достаточно серьезной проблемой в этой области.

Есть ли какая-то особая причина, по которой вам нужно связываться с User Agent?

Эта страница содержит список многих известных пользовательских агентов.

person Jesper Fyhr Knudsen    schedule 16.06.2010
comment
спасибо, ну, я смотрел пример кода, как показано ниже, и он устанавливал userAgent, затем я искал msdn, и в их примере они также устанавливали его ... но, как мы видим в моем примере кода ниже, он устанавливает userAgent на имя того приложения C #, которое он пишет, в примере msdn он установлен как тестовый клиент .NET Framework, и, как я сказал, когда комментировал этот код в ссылке msdn, ничего не изменилось! он все еще работал - person Bohn; 17.06.2010
comment
вот также пример кода, который я сказал в предыдущем комментарии, в предыдущем комментарии не было места для его публикации: if (wReq is HttpWebRequest) { ((HttpWebRequest)wReq).UserAgent = CytoWSClient; } - person Bohn; 17.06.2010
comment
Вы можете установить что угодно в качестве UserAgent, но веб-сервер должен понимать, что с этим делать. Он используется для отправки настроенных результатов обратно клиенту, таких как страница, подходящая для мобильного устройства, браузера или сканера. Если вы просто хотите, чтобы веб-сайт отображался в вашем браузере, вам не нужно устанавливать свойство или, по крайней мере, устанавливать его для известного браузера, чтобы получить предсказуемый результат. - person Jesper Fyhr Knudsen; 17.06.2010