zoukankan      html  css  js  c++  java
  • asp.net获取客户端浏览器及主机信息

    在线预览效果:
    http://tool.hovertree.com/info/client/

    其中aspx页面的控件代码:

    <asp:ListBox runat="server" ID="lbHoverTreeInfo" ClientIDMode="Static"> </asp:ListBox>

    以下是实现代码:

      1 using System;
      2 using System.Web;
      3 using System.Web.UI;
      4 
      5 namespace HoverTreeTool.HvtInfo.KeleyiClient
      6 {
      7 public partial class Index : System.Web.UI.Page
      8 {
      9 protected void Page_Load(object sender, EventArgs e)
     10 {
     11 string userAgent = Request.UserAgent == null ? "" : Request.UserAgent;
     12 if (!IsPostBack)
     13 {lbHoverTreeInfo.Items.Add("您的系统信息为:");
     14 lbHoverTreeInfo.Items.Add("客户端IP[Page.Request.UserHostAddress]:"+ Page.Request.UserHostAddress);
     15 lbHoverTreeInfo.Items.Add("浏览器类型[Request.Browser.Browser]:" + Request.Browser.Browser);
     16 lbHoverTreeInfo.Items.Add("浏览器标识[Request.Browser.Id]:" + Request.Browser.Id);
     17 lbHoverTreeInfo.Items.Add("浏览器版本号[Request.Browser.Version]:" + Request.Browser.Version);
     18 lbHoverTreeInfo.Items.Add("浏览器是不是测试版本[Request.Browser.Beta]:" + Request.Browser.Beta);
     19 lbHoverTreeInfo.Items.Add("浏览器类型[Request.Browser.Type]:" + Request.Browser.Type);
     20 lbHoverTreeInfo.Items.Add("是否支持框架网页[Request.Browser.Frames]:" + Request.Browser.Frames);
     21 lbHoverTreeInfo.Items.Add("是否支持Cookie[Request.Browser.Cookies]:" + Request.Browser.Cookies);
     22 lbHoverTreeInfo.Items.Add("浏览器JScript版本[Request.Browser.JScriptVersion]:" + Request.Browser.JScriptVersion);
     23 lbHoverTreeInfo.Items.Add("屏幕分辨率宽[System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width ]]:" + System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width);
     24 lbHoverTreeInfo.Items.Add("屏幕分辨率高[System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height ]]:" + System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height);
     25 lbHoverTreeInfo.Items.Add("浏览器类型[Request.Browser.Type]:" + Request.Browser.Type);
     26 lbHoverTreeInfo.Items.Add("客户端IP[GetHoverTreeIp()]:" + GetHoverTreeIp());
     27 lbHoverTreeInfo.Items.Add("客户端的操作系统[Request.Browser.Platform]:" + Request.Browser.Platform);
     28 lbHoverTreeInfo.Items.Add("客户端的操作系统[GetHoverTreeOSName(userAgent)]:" + GetHoverTreeOSName(userAgent));
     29 lbHoverTreeInfo.Items.Add("是不是win16系统[Request.Browser.Win16]:" + Request.Browser.Win16);
     30 lbHoverTreeInfo.Items.Add("是不是win32系统[Request.Browser.Win32]:" + Request.Browser.Win32);
     31 lbHoverTreeInfo.Items.Add("客户端.NET Framework版本:Request.Browser.ClrVersion]:" + Request.Browser.ClrVersion);
     32 lbHoverTreeInfo.Items.Add("是否支持Java[Request.Browser.JavaApplets]:" + Request.Browser.JavaApplets);
     33 
     34 if (Request.ServerVariables["HTTP_UA_CPU"] == null)
     35 lbHoverTreeInfo.Items.Add("CPU 类型[Request.ServerVariables["HTTP_UA_CPU"]]:未知");
     36 else
     37 lbHoverTreeInfo.Items.Add("CPU 类型[Request.ServerVariables["HTTP_UA_CPU"]]:" + Request.ServerVariables["HTTP_UA_CPU"]);
     38 
     39 lbHoverTreeInfo.Items.Add("UserAgent信息[Request.UserAgent]:" + userAgent);
     40 lbHoverTreeInfo.Items.Add("By 何问起工具 http://tool.hovertree.com/info/client/");
     41 
     42 }
     43 }
     44 
     45 /// <summary>
     46 /// 获取真实IP
     47 /// </summary>
     48 /// <returns></returns>
     49 public string GetHoverTreeIp()
     50 {
     51 string result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
     52 if (null == result || result == String.Empty)
     53 {
     54 result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
     55 }
     56 if (null == result || result == String.Empty)
     57 {
     58 result = HttpContext.Current.Request.UserHostAddress;
     59 }
     60 return result;
     61 }
     62 
     63 /// <summary>
     64 /// 根据 User Agent 获取操作系统名称
     65 /// </summary>
     66 private string GetHoverTreeOSName(string userAgent)
     67 {
     68 string m_hvtOsVersion = "未知";
     69 if (userAgent.Contains("NT 6.4"))
     70 {
     71 m_hvtOsVersion = "Windows 10";
     72 }
     73 else
     74 if (userAgent.Contains("NT 6.3"))
     75 {
     76 m_hvtOsVersion = "Windows 8.1";
     77 }
     78 else
     79 if (userAgent.Contains("NT 6.2"))
     80 {
     81 m_hvtOsVersion = "Windows 8";
     82 }
     83 else
     84 if (userAgent.Contains("NT 6.1"))
     85 {
     86 m_hvtOsVersion = "Windows 7";
     87 }else
     88 if (userAgent.Contains("NT 6.0"))
     89 {
     90 m_hvtOsVersion = "Windows Vista/Server 2008";
     91 }
     92 else if (userAgent.Contains("NT 5.2"))
     93 {
     94 m_hvtOsVersion = "Windows Server 2003";
     95 }
     96 else if (userAgent.Contains("NT 5.1"))
     97 {
     98 m_hvtOsVersion = "Windows XP";
     99 }
    100 else if (userAgent.Contains("NT 5"))
    101 {
    102 m_hvtOsVersion = "Windows 2000";
    103 }
    104 else if (userAgent.Contains("NT 4"))
    105 {
    106 m_hvtOsVersion = "Windows NT4";
    107 }
    108 else if (userAgent.Contains("Me"))
    109 {
    110 m_hvtOsVersion = "Windows Me";
    111 }
    112 else if (userAgent.Contains("98"))
    113 {
    114 m_hvtOsVersion = "Windows 98";
    115 }
    116 else if (userAgent.Contains("95"))
    117 {
    118 m_hvtOsVersion = "Windows 95";
    119 }
    120 else if (userAgent.Contains("Mac"))
    121 {
    122 m_hvtOsVersion = "Mac";
    123 }
    124 else if (userAgent.Contains("Unix"))
    125 {
    126 m_hvtOsVersion = "UNIX";
    127 }
    128 else if (userAgent.Contains("Linux"))
    129 {
    130 m_hvtOsVersion = "Linux";
    131 }
    132 else if (userAgent.Contains("SunOS"))
    133 {
    134 m_hvtOsVersion = "SunOS";
    135 }
    136 return m_hvtOsVersion;
    137 }
    138 
    139 }
    140 }

    转载自:http://hovertree.com/hvtart/bjae/n9f5pp4r.htm

    开发技术文章: http://www.cnblogs.com/sosoft/p/kaifajishu.html

    ASP.NET开源CMS http://www.cnblogs.com/sosoft/p/cms.html

  • 相关阅读:
    Linux下Tomcat重新启动
    Navicat远程连接不上mysql解决方案
    Tomcat 启动时 SecureRandom 非常慢解决办法,亲测有效
    SpringMVC Controller接收参数总结
    maven source 1.3 中不支持泛型 解决办法
    css background-image 自适应宽高——转载
    IntellIJ IDEA 配置 Maven 以及 修改 默认 Repository
    使用Idea从github上获取项目
    取消IDEA默认打开最近的项目(设置打开选择创建页面)
    GameFreamWork框架----事件系统的应用
  • 原文地址:https://www.cnblogs.com/sosoft/p/clientinfo.html
Copyright © 2011-2022 走看看