Как определить с какого устройства открыт сайт
— 1 минута
Самым простым способом является анализ строки User-Agent’a — это специальный заголовок, который передаётся браузером устройства вместе с любым запросом.
Сразу рассмотрим на примере:
text1Запрос с айфона из Safari: 2Mozilla/5.0 (iPhone; CPU iPhone OS 14_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0 Mobile/15E148 Safari/604.1 3 4Запрос с комьютера из Google Chrome: 5Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 6
Из этой строки можно достать информацию об устройстве пользователя, его операционной системе и браузере.
Чтобы проанализировать строку, можно воспользоваться либо готовыми библиотеками, либо написать примерно такой код:
javascript1const isMobile = () => /Mobi|Android/i.test(navigator.userAgent) 2 3if (isMobile()) { 4 console.log("Мобильное устройство"); 5} else { 6 console.log("Десктопное устройство"); 7} 8
Выше достаточно упрощённая версия кода, просто чтобы передать основную идею.
Пригодиться это может в нескольких кейсах:
- для изменения вёрстки под особенности устройства
- для сбора аналитики
- подключение и использование специфичных API (геолокация, сенсорные жесты, вибрация и пр.)
- ну и точно что-то ещё, о чём я мог забыть
Статья была полезной?
Читайте также:
— 2 минуты
Как реагировать на изменения объекта
В JavaScript обычные объекты не умеют уведомлять о своих изменениях, однако...
— 2 минуты
Что такое Server-Sent Events
SSE — это технология для однонаправленного соединения между сервером и клие...
— 4 минуты
Связываем React и localStorage через useSyncExternalStore
Как согласовать изменение состояния в реакте и поля в localStorage? До нед...