根据 Agent 判断 访问设置是电脑还是手机
来源:互联网 发布:精英男人 知乎 编辑:程序博客网 时间:2024/05/16 05:09
做了WAP网站,用到判断用户来自PC还是手机,想了很多方法,如判断IP,判断分辨率等,但经过试验,都不太可靠,最终采用了通过获得http头信息的方法来判断,此方法可靠性最高.详细代码如下:
if (Request.Headers["user-agent"] != null && Request.Headers["user-agent"].ToLower().ToString().IndexOf("mozilla") != -1)
Response.Redirect("www/index.aspx");
else
Response.Redirect("wap/index.aspx");
/// <summary>
/// 根据 Agent 判断是否是智能手机
/// </summary>
/// <returns></returns>
public static bool CheckAgent()
{
bool flag = false;
string agent = HttpContext.Current.Request.UserAgent;
string[] keywords = { "Android", "iPhone", "iPod", "iPad", "Windows Phone", "MQQBrowser" };
//排除Window 桌面系统 和 苹果桌面系统
if (!agent.Contains("Windows NT") && !agent.Contains("Macintosh"))
{
foreach (string item in keywords)
{
if (agent.Contains(item))
{
flag = true;
break;
}
}
}
return flag;
}
代码解释:
1. !agent.Contains("Windows NT") && !agent.Contains("Macintosh") 排除Window 桌面系统 和 苹果桌面系统
2. "Android", "iPhone", "iPod", "iPad", "Windows Phone", "MQQBrowser" 这些是判断智能设备Agent中的关键词
3. MQQBrowser 为 QQ 手机浏览器,QQ 手机的Agent 比较特殊,所以单独判断
下面搜集的一些Agent,话说找到这么多的智能设备,好不容易啊:
Mozilla/5.0 (iPod; U; CPU iPhone OS 4_3_2 like Mac OS X; zh-cn) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5
Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_2 like Mac OS X; zh-cn) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5
MQQBrowser/25 (Linux; U; 2.3.3; zh-cn; HTC Desire S Build/GRI40;480*800)
Mozilla/5.0 (Linux; U; Android 2.3.3; zh-cn; HTC_DesireS_S510e Build/GRI40) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
Mozilla/5.0 (SymbianOS/9.3; U; Series60/3.2 NokiaE75-1 /110.48.125 Profile/MIDP-2.1 Configuration/CLDC-1.1 ) AppleWebKit/413 (KHTML, like Gecko) Safari/413
Mozilla/5.0 (iPad; U; CPU OS 4_3_3 like Mac OS X; zh-cn) AppleWebKit/533.17.9 (KHTML, like Gecko) Mobile/8J2
Mozilla/5.0 (Windows NT 5.2) AppleWebKit/534.30 (KHTML, like Gecko) Chrome/12.0.742.122 Safari/534.30
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/534.51.22
Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A5313e Safari/7534.48.3
Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A5313e Safari/7534.48.3
Mozilla/5.0 (iPhone; CPU iPhone OS 5_0 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A5313e Safari/7534.48.3
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1
- 根据 Agent 判断 访问设置是电脑还是手机
- .net 判断是手机还是电脑访问
- 判断访问来源是手机还是电脑
- 判断是手机还是电脑访问网站
- 判断访问端是手机还是电脑
- 判断是手机还是电脑访问网站
- 判断访问页面的是 电脑访问 还是 手机访问
- aspnet 判断用户是访问手机还是访问电脑
- js判断是手机访问还是电脑访问
- php判断是手机访问还是电脑访问
- 使用js判断是手机访问还是电脑访问
- PHP判断用户是电脑访问还是手机访问
- PHP判断用户是手机访问还是电脑访问页面
- js判断是手机访问还是电脑访问
- js判断是手机访问还是电脑访问
- 服务器判断是手机访问网址还是电脑访问网址
- js判断是手机访问还是电脑访问
- js判断是手机访问还是电脑访问
- 生活,未来
- 公积金贷款摘抄
- linux驱动实践(二)--linux3.0.46移植和NFS根文件系统
- ASP.net 下载文件处理
- s3c2440存储控制器和地址以及启动的理解
- 根据 Agent 判断 访问设置是电脑还是手机
- c++ 时间类型详解 time_t
- 图像处理——图像平滑
- Window7环境下配置JDK
- linux系统下注释乱码解决
- Python 3 日记 - 字符串(二)
- CSS3中的transition详解
- 本科家庭收入是小学家庭4.4倍
- 大学计算机基础第四版理论基础和学习指导书后习题答案