Задать вопрос
@Artur2027

Как узнать разрешение экрана на стороне сервера при Server-Side Rendering?

Используем Nuxt 2. Есть mixin, который отрисовывает компонент предназначенный для разных разрешений экрана (mobile, tablet, desktop). Mixin ориентируется на ширину экрана (если ширина экрана неизвеста, то отрисовывает компонент для мобильных устройств). Проблема заключается в том, что при генерации разметки nuxt'ом на стороне сервера неизвестна ширина экрана, по этому mixin всегда отдает компонент для мобильных устройств. Затем на стороне клиента (в браузере) все-равно приходится перерендеривать разметку для версий tablet и desktop.

Вопрос заключается в том: как сразу на стороне сервера генерировать разметку под ту версию устройства с которого пришел HTTP запрос?
  • Вопрос задан
  • 588 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 2
@humoured
Вы всё на свете найдёте в коробке с карандашами
Концептуально неверный подход.

Всё, что сервер может узнать о клиенте, находится в HTTP заголовках запроса, в строке User-Agent. Узнать, мобильный клиент запрашивает контент или десктопный, можно распарсив эти данные.

А вот какое разрешение экрана у устройства — вообще не дело сервера. Если я сожму окно браузера на ноутбуке до форточки размером 400х300 пикселей, я стану мобильным устройством?
Ответ написан
Комментировать
Идиотский подход. Верстка должна быть всегда одинаковая, разрешение отрабатывается media queries
https://developer.mozilla.org/en-US/docs/Web/CSS/M...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽