Вопрос по http – Как определить, поступил ли HTTP-запрос от браузера или чего-то еще, например, от веб-службы?

8

Как определить, поступил ли HTTP-запрос от браузера или чего-то еще, например, от веб-службы?

Я знаю, что есть пользовательский агент, но это в основном для веб-браузеров. Например, я знаю, что запрос пришел с карты Google или YouTube. Запрос с привязанного устройства.

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

Благодарю.

Ваш Ответ

2   ответа
8

пришел ли запрос из браузера или что-то еще, что делает HTTP-запрос.

Протокол HTTP позволяет клиенту произвольно устанавливать User Agent.

Можно попытаться определить, является ли вещь на другом конце браузером, например. путем выполнения JavaScript и измерения результата. Однако некоторые боты могут выполнять JavaScript, и не все браузеры выполняют JavaScript, так что тип теста никогда не может быть идеальным.

Хорошо себя ведущие "боты" (как и обычные поисковики) идентифицируют себя с помощью специального агента пользователя. Вот довольно полный список пользовательских агентов:

http://www.user-agents.org/

http://www.botsvsbrowsers.com/

0

но вы можете проанализировать заголовок User-Agent и получить представление о том, что это, вероятно, есть.

Вот список некоторых из них. Я сомневаюсь, что он всеобъемлющий, но вы должны понять: http://www.zytrax.com/tech/web/browser_ids.htm

Похожие вопросы