Как идентифицировать веб-запрос с КПК / ПК / Сервера?

Я хотел бы знать, возможно ли определить (с помощью JAVA) тип компьютера, используемого для запроса, например: сервер, настольный компьютер, КПК (планшет, мобильный телефон и т. Д.)?

Спасибо!

2 ответа

Решение

Да, это в определенной степени. Вы должны получить строку User-Agent из HTTP-запроса. Как это сделать, будет зависеть от вашей реализации Java и фреймворка, но это направление, которое вы должны выбрать. Вам нужно будет проверить строку на наличие версий браузера, мобильного телефона и т. Д.

Вот запрос от моего Mac:

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_5) AppleWebKit/536.30.1 (KHTML, like Gecko) Version/6.0.5 Safari/536.30.1

И вот с моего сервера Windows:

Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)

И вот с моего айфона:

Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10B329 Safari/8536.25

Зависит от того, что вы используете для принятия запросов. Для запросов http информация находится в разделе User agent заголовка запроса.

Другие вопросы по тегам