最近一段时间,都在使用Jquery-Mobile + MVC做手机Web,有一些心得、体会
下面介绍如何拒绝电脑访问手机网站
电脑的浏览器,跟手机的浏览器内核不一样,这是我设置拒绝访问的思路。
下面是我已经封装好了的一个拒绝访问的一个方法
1 public static class IsMobileDevice
2 {
3 /// <summary>
4 /// 是否为手机访问
5 /// </summary>
6 /// <param name="strUserAgent">获取机型、浏览器等型号</param>
7 /// <returns>true 是手机访问;false 不是手机访问</returns>
8 public static bool IsMobile(string strUserAgent)
9 {
10 if (strUserAgent != null)
11 {
12 if (System.Web.HttpContext.Current.Request.Browser.IsMobileDevice == true ||
13 strUserAgent.Contains("iphone") ||
14 strUserAgent.Contains("blackberry") ||
15 strUserAgent.Contains("mobile") ||
16 strUserAgent.Contains("windows ce") ||
17 strUserAgent.Contains("opera mini") ||
18 strUserAgent.Contains("palm") ||
19 strUserAgent.Contains("mobi") ||
20 strUserAgent.Contains("nokia") ||
21 strUserAgent.Contains("samsung") ||
22 strUserAgent.Contains("sonyericsson") ||
23 strUserAgent.Contains("mot") ||
24 strUserAgent.Contains("lg") ||
25 strUserAgent.Contains("htc") ||
26 strUserAgent.Contains("j2me") ||
27 strUserAgent.Contains("ucweb")
28 )
29 return true;
30 else
31 return false;
32 }
33 else
34 return false;
35 }
36 }
下面是MVC中的一个测试页面
通过Request.UserAgent,可以获取当前客户端的完整代理字符串,我目前是使用的谷歌浏览器,可以看到进入了我自己定义的一个错误页面
然后在使用安卓、苹果访问,均能测试成功。
在做手机网站的时候,由于布局等,完全跟PC端不一样,所以需要进行过滤,希望这个简单的方法能够帮到您。
时间: 2024-08-11 07:43:00