В Spring 5 я использовал org.springframework.mobile jar и Device класс, чтобы определить, исходит ли запрос REST с мобильного устройства или нет.
код:
if (device.isMobile() || device.isTablet()) {
return true;
}
Но весной 6 org.springframework.mobile баночку убирают.
Есть ли другой способ проверить, поступил ли запрос REST с мобильного телефона или нет.
любой альтернативный способ проверки...
Вы можете скопировать код из Spring Mobile (перехватчик или фильтр), который добавляет эту информацию, и адаптировать его к изменениям. Кроме того, поскольку от него давно отказались, он, вероятно, даже не поддерживает уже все устройства, особенно новые.




От всей библиотеки Spring Mobile отказались, поскольку не существует надежного способа определить, кто (какое устройство) является отправителем HTTP-запроса. Клиент может указать в шапке некоторую информацию, например User-Agent, но это не обязательно.
Лучший вариант для вас как владельца REST API — определить дополнительный параметр в API и позволить вашим клиентам настроить его правильно. Например deviceType=mobile.
Если это невозможно, вы можете попробовать проверить вышеупомянутый ключ User-Agent заголовка, используя HttpServletRequest.getHeader().
Это никогда не было частью Spring, а было частью Spring Mobile, от которого отказались много лет назад. Как уже ответил здесь.