博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java 判断请求来自手机端还是电脑端
阅读量:6235 次
发布时间:2019-06-22

本文共 938 字,大约阅读时间需要 3 分钟。

根据当前请求的特征,判断该请求是否来自手机终端,主要检测特殊的头信息,以及user-Agent这个header

public static boolean isMobileDevice(HttpServletRequest request){

boolean b = false;
boolean pcFlag = false;
boolean mobileFlag = false;
String via = request.getHeader("Via");
String userAgent = request.getHeader("user-agent");
for (int i = 0; via!=null && !via.trim().equals("") && i < mobileGateWayHeaders.length; i++) {
if(via.contains(mobileGateWayHeaders[i])){
mobileFlag = true;
break;
}
}
for (int i = 0;!mobileFlag && userAgent!=null && !userAgent.trim().equals("") && i < mobileUserAgents.length; i++) {
if(userAgent.contains(mobileUserAgents[i])){
mobileFlag = true;
break;
}
}
for (int i = 0; userAgent!=null && !userAgent.trim().equals("") && i < pcHeaders.length; i++) {
if(userAgent.contains(pcHeaders[i])){
pcFlag = true;
break;
}
}
if(mobileFlag==true && pcFlag==false){
b=true;
}
return b;//false pc true shouji
}

 

转载于:https://www.cnblogs.com/chong518/p/9377410.html

你可能感兴趣的文章
12篇学通C#网络编程——第二篇 HTTP应用编程(上)(转)
查看>>
SSH服务连接时常见问题解答
查看>>
SQL Server2012中的Throw语句尝试
查看>>
[观点]尽可能的缓存
查看>>
怎么了解某一研究领域的总体发展趋势
查看>>
关于MapControl和PageLayoutControl同步的一点分析
查看>>
Convert an object into Json using SBJson or other JSON library
查看>>
C++中的类所占内存空间总结
查看>>
Java之命令模式(Command Pattern)
查看>>
WCF RIA Services 简单应用
查看>>
毕业了,校园里走走看看——华中科技大学
查看>>
C#.NET 添加图片水印
查看>>
wcf系列5天速成——第一天 binding的使用(1)
查看>>
ExtJs布局之viewport
查看>>
Lua学习笔记
查看>>
1、第一个JSP
查看>>
希尔排序(Shell)
查看>>
Nginx-location配置指南
查看>>
Knockout应用开发指南 第一章:入门
查看>>
C# 6.0新特性
查看>>