沒在java後台做過這復種判斷,但如果你制是寫網站,html前端就可以進行判斷了
functionIsPC(){
varuserAgentInfo=navigator.userAgent;
varAgents=["Android","iPhone",
"SymbianOS","WindowsPhone",
"iPad","iPod"];
varflag=true;
for(varv=0;v<Agents.length;v++){
if(userAgentInfo.indexOf(Agents[v])>0){
flag=false;
break;
}
}
returnflag;
}
在js調用這個方法,如果返回true就說明是電腦登錄,如果返回false就說明是手機登錄
2. java 實現 判斷是pc端的還是手機瀏覽器進入
你用手機上來的瀏覽器訪源問一下,把這個user-agent輸出一下
手機上常用的瀏覽器也就是那幾種,你可以用正則表達式去匹配。
~如果你認可我的回答,請及時點擊【採納為滿意回答】按鈕
~~手機提問的朋友在客戶端右上角評價點【滿意】即可。
~你的採納是我前進的動力
~~O(∩_∩)O,記得好評和採納,互相幫助,謝謝。
3. java能否判斷請求屬於pc端,手機端嗎
可以,但請求中的信息屬於瀏覽器發出的,瀏覽器說是pc端,那麼哪怕你是用的手機,java後台依然判斷為pc端。
4. java中如何判斷請求是來自手機端還是web端
控制器中接收user—Agent,我們是spring mvc框架,controller中寫
String ua = request.getHeader("User-Agent");
下面就是一個基本方法了,可以寫在一個util類中,我們是放在了StringUtil.java中
private final static String[] agent = { "Android", "iPhone", "iPod","iPad", "Windows Phone", "MQQBrowser" };
定義移動端請求的所有可能類型
方法參數為我們控制器中接收的user——Agent,
/**
* 判斷User-Agent 是不是來自於手機
* @param ua
* @return
*/
public static boolean checkAgentIsMobile(String ua) {
boolean flag = false;
if (!ua.contains("Windows NT") || (ua.contains("Windows NT") && ua.contains("compatible; MSIE 9.0;"))) {
// 排除 蘋果桌面系統
if (!ua.contains("Windows NT") && !ua.contains("Macintosh")) {
for (String item : agent) {
if (ua.contains(item)) {
flag = true;
break;
}
}
5. java怎麼判斷是pc瀏覽器還是手機瀏覽器
function IsPC() {
var userAgentInfo = navigator.userAgent;
var Agents = ["Android", "iPhone",
"SymbianOS", "Windows Phone",
"iPad", "iPod"];
var flag = true;
for (var v = 0; v < Agents.length; v++) {
if (userAgentInfo.indexOf(Agents[v]) > 0) {
flag = false;
break;
}
}
return flag;
}
6. java後台怎麼判斷是手機還是電腦訪問網站
{
/**Wap網關Via頭信息中特有的描述信息*/
[]=newString[]{"ZXWAP",//中興提供的wap網關的via信息,例如:Via=ZXWAP
//GateWayZTE
//Technologies,
"chinamobile.com",//中國移動的諾基亞wap網關,例如:Via=WTP/1.1
//GDSZ-PB-GW003-WAP07.gd.chinamobile.com(Nokia
//WAPGateway4.1CD1/ECD13_D/4.1.04)
"monternet.com",//移動夢網的網關,例如:Via=WTP/1.1
//BJBJ-PS-WAP1-GW08.bj1.monternet.com.(NokiaWAP
//Gateway4.1CD1/ECD13_E/4.1.05)
"infoX",//華為提供的wap網關,例如:Via=HTTP/1.1GDGZ-PS-GW011-WAP2(infoX-WISG
//HuaweiTechnologies),或Via=infoXWAPGatewayV300R001
//HuaweiTechnologies
"XMS724SolutionsHTG",//國外電信運營商的wap網關,不知道是哪一家
"wap.lizongbo.com",//自己測試時模擬的頭信息
"Bytemobile",//貌似是一個給移動互聯網提供解決方案提高網路運行效率的,例如:Via=1.1BytemobileOSN
//WebProxy/5.1
};
/**電腦上的IE或Firefox瀏覽器等的User-Agent關鍵詞*/
privatestaticString[]pcHeaders=newString[]{"Windows98",
"WindowsME","Windows2000","WindowsXP","WindowsNT","Ubuntu"};
/**手機瀏覽器的User-Agent里的關鍵詞*/
privatestaticString[]mobileUserAgents=newString[]{"Nokia",//諾基亞,有山寨機也寫這個的,總還算是手機,Mozilla/5.0
//(Nokia5800
//XpressMusic)UC
//AppleWebkit(like
//Gecko)
//Safari/530
"SAMSUNG",//三星手機
//SAMSUNG-GT-B7722/1.0+SHP/VPP/R5+Dolfin/1.5+Nextreaming+SMM-MMS/1.2.0+profile/MIDP-2.1+configuration/CLDC-1.1
"MIDP-2",//j2me2.0,Mozilla/5.0(SymbianOS/9.3;U;Series60/3.2
//NokiaE75-1/110.48.125Profile/MIDP-2.1
//Configuration/CLDC-1.1)AppleWebKit/413(KHTMLlike
//Gecko)Safari/413
"CLDC1.1",//M600/MIDP2.0/CLDC1.1/Screen-240X320
"SymbianOS",//塞班系統的,
"MAUI",//MTK山寨機默認ua
"UNTRUSTED/1.0",//疑似山寨機的ua,基本可以確定還是手機
"WindowsCE",//WindowsCE,Mozilla/4.0(compatible;MSIE6.0;
//WindowsCE;IEMobile7.11)
"iPhone",//iPhone是否也轉wap?不管它,先區分出來再說。Mozilla/5.0(iPhone;U;CPU
//iPhoneOS4_1likeMacOSX;zh-cn)AppleWebKit/532.9
//(KHTMLlikeGecko)Mobile/8B117
"iPad",//iPad的ua,Mozilla/5.0(iPad;U;CPUOS3_2likeMacOSX;
//zh-cn)AppleWebKit/531.21.10(KHTMLlikeGecko)
//Version/4.0.4Mobile/7B367Safari/531.21.10
"Android",//Android是否也轉wap?Mozilla/5.0(Linux;U;Android
//2.1-update1;zh-cn;XT800Build/TITA_M2_16.22.7)
//AppleWebKit/530.17(KHTMLlikeGecko)Version/4.0
//MobileSafari/530.17
"BlackBerry",//BlackBerry8310/2.7.0.106-4.5.0.182
"UCWEB",//ucweb是否只給wap頁面?Nokia5800
//XpressMusic/UCWEB7.5.0.66/50/999
"ucweb",//小寫的ucweb貌似是uc的代理伺服器Mozilla/6.0(compatible;MSIE6.0;)
//Operaucweb-squid
"BREW",//很奇怪的ua,例如:REW-Applet/0x20068888(BREW/3.1.5.20;DeviceId:
//40105;Lang:zhcn)ucweb-squid
"J2ME",//很奇怪的ua,只有J2ME四個字母
"YULONG",//宇龍手機,YULONG-CoolpadN68/10.14IPANEL/2.0CTC/1.0
"YuLong",//還是宇龍
"COOLPAD",//宇龍酷派YL-COOLPADS100/08.10.S100POLARIS/2.9CTC/1.0
"TIANYU",//天語手機TIANYU-KTOUCH/V209/MIDP2.0/CLDC1.1/Screen-240X320
"TY-",//天語,TY-F6229/701116_6215_V0230JUPITOR/2.2CTC/1.0
"K-Touch",//還是天語K-Touch_N2200_CMCC/TBG110022_1223_V0801MTK/6223
//Release/30.07.2008Browser/WAP2.0
"Haier",//海爾手機,Haier-HG-M217_CMCC/3.0Release/12.1.2007
//Browser/WAP2.0
"DOPOD",//多普達手機
"Lenovo",//聯想手機,Lenovo-P650WG/S100LMP/LMLRelease/2010.02.22
//Profile/MIDP2.0Configuration/CLDC1.1
"LENOVO",//聯想手機,比如:LENOVO-P780/176A
"HUAQIN",//華勤手機
"AIGO-",//愛國者居然也出過手機,AIGO-800C/2.04TMSS-BROWSER/1.0.0CTC/1.0
"CTC/1.0",//含義不明
"CTC/2.0",//含義不明
"CMCC",//移動定製手機,K-Touch_N2200_CMCC/TBG110022_1223_V0801MTK/6223
//Release/30.07.2008Browser/WAP2.0
"DAXIAN",//大顯手機DAXIANX180UP.Browser/6.2.3.2(GUI)MMP/2.0
"MOT-",//摩托羅拉,MOT-MOTOROKRE6/1.0LinuxOS/2.4.20Release/8.4.2006
//Browser/Opera8.00Profile/MIDP2.0Configuration/CLDC1.1
//Software/R533_G_11.10.54R
"SonyEricsson",//索愛手機,SonyEricssonP990i/R100Mozilla/4.0
//(compatible;MSIE6.0;SymbianOS;405)Opera
//8.65[zh-CN]
"GIONEE",//金立手機
"HTC",//HTC手機
"ZTE",//中興手機,ZTE-A211/P109A2V1.0.0/WAP2.0Profile
"HUAWEI",//華為手機,
"webOS",//palm手機,Mozilla/5.0(webOS/1.4.5;U;zh-CN)
//AppleWebKit/532.2(KHTMLlikeGecko)Version/1.0
//Safari/532.2Pre/1.0
"GoBrowser",//3gGoBrowser.User-Agent=Nokia5230/GoBrowser/2.0.290
//Safari
"IEMobile",//WindowsCE手機自帶瀏覽器,
"WAP2.0"//支持wap2.0的
};
/**
*根據當前請求的特徵,判斷該請求是否來自手機終端,主要檢測特殊的頭信息,以及user-Agent這個header
*
*@paramrequest
*http請求
*@return如果命中手機特徵規則,則返回對應的特徵字元串
*/
(HttpServletRequestrequest){
booleanpcFlag=false;
booleanmobileFlag=false;
Stringvia=request.getHeader("Via");
StringuserAgent=request.getHeader("user-agent");
for(inti=0;via!=null&&!via.trim().equals("")
&&i<mobileGateWayHeaders.length;i++){
if(via.contains(mobileGateWayHeaders[i])){
mobileFlag=true;
break;
}
}
for(inti=0;!mobileFlag&&userAgent!=null
&&!userAgent.trim().equals("")&&i<mobileUserAgents.length;i++){
if(userAgent.contains(mobileUserAgents[i])){
mobileFlag=true;
break;
}
}
for(inti=0;userAgent!=null&&!userAgent.trim().equals("")
&&i<pcHeaders.length;i++){
if(userAgent.contains(pcHeaders[i])){
pcFlag=true;
}
}
if(mobileFlag==true&&mobileFlag!=pcFlag){
returntrue;
}
returnfalse;
}
}
來自編程愛好者熊浪的分享
7. java後台怎麼判斷是手機還是電腦訪問網站
String userAgent = request.getHeader("user-agent");
if(userAgent.indexOf("Android") != -1){
//安卓
}else if(userAgent.indexOf("iPhone") != -1 || userAgent.indexOf("iPad") != -1){
//蘋果版
}else{
//電腦權
}