Spring 6如何检测REST API请求是来自移动设备还是来自PC

问题描述 投票:0回答:1

在 Spring 5 中,我使用

org.springframework.mobile
jar 和
Device
类来检测 REST 请求是否来自移动设备。

代码:

if (device.isMobile() || device.isTablet()) {
                return true;
            }

但在春季 6,

org.springframework.mobile
罐子被移除。

是否有其他方法可以检查 REST 请求是否来自移动设备。

java spring spring-boot mobile
1个回答
0
投票

整个 Spring Mobile 库已被废弃,因为没有可靠的方法来确定谁(什么设备)是 HTTP 请求的发送者。客户端可以在 header 中设置一些信息,例如

User-Agent
,但这不是强制性的。

作为 REST API 所有者,您的最佳选择是在 API 中定义附加参数并让您的客户正确设置它。例如

deviceType=mobile

如果不可行,那么您可以尝试使用

User-Agent
检查上述标题的
HttpServletRequest.getHeader()
键。

© www.soinside.com 2019 - 2024. All rights reserved.