判断站点访问的终端类型(移动端还是pc端)的方法

本文介绍了通过UserAgent、分辨率、屏幕大小等方法识别网站访问设备类型的技术,并以优酷站点为例展示了通过网络IP地址判断移动网络访问并跳转至不同站点的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要了解某个网站是在移动设备上打开的还是在pc web浏览器中打开的,我们可以有以下综合的几种方式来搞定:

通过判断Request.UserAgent中的具体信息来分析判断,因为UserAgent包含了很多的信息,所以我们可以根据其中的某些信息来进行判断,具体的判断方式如下:

(1)string strUserAgent = Request.UserAgent.ToString().ToLower();
 
if (strUserAgent != null ){
 
   if (Request.Browser.IsMobileDevice == true || strUserAgent.Contains( "iphone" ) || 
   strUserAgent.Contains( "blackberry" ) || strUserAgent.Contains( "mobile" ) || 
   strUserAgent.Contains( "windows ce" ) || strUserAgent.Contains( "opera mini" ) || 
   strUserAgent.Contains( "palm" )){
      Response.Redirect( "DefaultMobile.aspx" );
   }
}
 
(2)((System.Web.Configuration.HttpCapabilitiesBase)Request.Browser).IsMobileDevice
 
(3)public static boolean choose(String userAgent){       
                 Agent.indexOf( "WapI" ) > -1 || // Ericsson WapIDE 2.0  
                 userAgent.indexOf( "MC21" ) > -1 || // Ericsson MC218  
                 userAgent.indexOf( "AUR" ) > -1 || // Ericsson R320  
                 userAgent.indexOf( "R380" ) > -1 || // Ericsson R380  
                 userAgent.indexOf( "UP.B" ) > -1 || // UP.Browser  
                 userAgent.indexOf( "WinW" ) > -1 || // WinWAP browser  
                 userAgent.indexOf( "UPG1" ) > -1 || // UP.SDK 4.0  
                 userAgent.indexOf( "upsi" ) > -1 || //another kind of UP.Browser  
                 userAgent.indexOf( "QWAP" ) > -1 || // unknown QWAPPER browser  
                 userAgent.indexOf( "Jigs" ) > -1 || // unknown JigSaw browser  
                 userAgent.indexOf( "Java" ) > -1 || // unknown Java based browser  
                 userAgent.indexOf( "Alca" ) > -1 || // unknown Alcatel-BE3 browser (UP based)  
                 userAgent.indexOf( "MITS" ) > -1 || // unknown Mitsubishi browser  
                 userAgent.indexOf( "MOT-" ) > -1 || // unknown browser (UP based)  
                 userAgent.indexOf( "My S" ) > -1 || // unknown Ericsson devkit browser  
                  userAgent.indexOf( "WAPJ" ) > -1 || //Virtual WAPJAG www.wapjag.de  
                 userAgent.indexOf( "fetc" ) > -1 || //fetchpage.cgi Perl script from www.wapcab.de  
                 userAgent.indexOf( "ALAV" ) > -1 || //yet another unknown UP based browser  
                 userAgent.indexOf( "Wapa" ) > -1 || //another unknown browser (Web based "Wapalyzer")  
                 userAgent.indexOf( "Oper" ) > -1){
        return true ;
    } else {
        return false ;
    }
 
(4) if (HttpContext.Current.Request.Headers[ "user-agent" ] != null && HttpContext.Current.Request.Headers[ "user-agent" ].ToLower().ToString().IndexOf( "mozilla" ) != -1){
                   HttpContext.Current.Response.Redirect( "http://www. " ); //PC
          } else {
                 HttpContext.Current.Response.Redirect( "http://wap " ); //Mobile ClientTypeTesting.
          }

当然我们还可以根据设备的分辨率和屏幕大小来判断是移动设备还是pc设备,但是这个准确性比较低。

优酷的站点是通过网络的Ip地址来进行判断的,如果是移动网络,浏览器访问站点时就会跳转到3GP网站,否则就跳转到PC站点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值