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

时间: 2024-12-19 05:53:53

asp.net获取客户端浏览器及主机信息的相关文章

ASP.NET获取客户端、服务器端的信息

ASP.NET获取客户端.服务器端基础信息 1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostName 获取客户端电脑IP:Page.Request.UserHostAddress 2. 在网络编程中的通用方法: 获取当前电脑名:static System.Net.Dns.GetHostName() 根据电脑名取出全部IP地址:static Syst

ASP.NET获取客户端及服务器的信息

客户端信息: 1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostName 获取客户端电脑IP:Page.Request.UserHostAddress 2. 在网络编程中的通用方法: 获取当前电脑名:static System.Net.Dns.GetHostName() 根据电脑名取出全部IP地址:static System.Net.Dns.Reso

ASP.NET获取客户端、服务器端基础信息

1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostName 获取客户端电脑IP:Page.Request.UserHostAddress 2. 在网络编程中的通用方法: 获取当前电脑名:static System.Net.Dns.GetHostName() 根据电脑名取出全部IP地址:static System.Net.Dns.Resolve(电脑名

ASP.NET获取客户端IP/用户名等信息

1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostName 获取客户端电脑IP:Page.Request.UserHostAddress 2. 在网络编程中的通用方法: 获取当前电脑名:static System.net.Dns.GetHostName() 根据电脑名取出全部IP地址:static System.Net.Dns.Resolve(电脑名

【转】C#获取客户端及服务器端主机信息及其获取IP地址

原文发布时间为:2009-10-28 -- 来源于本人的百度文章 [由搬家工具导入] 小结: 1、REMOTE_ADDR 不可被修改,但是可能会获得代理服务器的IP,而不是实际客户端的IP。 2、通过 HTTP_VIA、HTTP_X_FORWARDED_FOR 我们可以获得代理服务器所代理的信息,但是这依靠代理服务器的支持。另外,这两个值可以被修改。我们通过它获得的信息可能是不真实的。另,HTTP_X_FORWARDED_FOR 的信息可能是一个集合,不含 REMOTE_ADDR 中的代理服务器

ASP.NET获取客户端信息,获取客户端IP等等

山上明月 ASP.NET能知道的东西 获取服务器电脑名: Page.Server.ManchineName 获取用户信息: Page.User 获取客户端电脑名:Page.Request.UserHostName 获取客户端电脑IP: Page.Request.UserHostAddress 1. 在ASP.NET中专用属性: 获取服务器电脑名:Page.Server.ManchineName 获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostName

C#获取客户端浏览器信息

Request.Browser.MajorVersion.ToString();//获取客户端浏览器的(主)版本号Request.Browser.Version.ToString();//获取客户端浏览器的完整版本号 Request.Browser.Platform.ToString();//获取客户端使用平台的名字 Request.UserHostAddress.ToString(); //获取远程客户端主机IP HttpRequest.Url 获取有关当前请求的 URL 的信息. HttpR

.Net Web Api——获取客户端浏览器信息

第一次接触到web api,发现这个东西是REST风格的:---- 微软的web api是在vs2012上的mvc4项目绑定发行的,它提出的web api是完全基于RESTful标准的,完全不同于之前的(同是SOAP协议的)wcf和webService,它是简单,代码可读性强的,上手快的,如果要拿它和web服务相比,我会说,它的接口更标准,更清晰,没有混乱的方法名称,有的只有几种标准的请求,如get,post,put,delete等,它们分别对应的几个操作,下面讲一下: GET:生到数据列表(默

获取各浏览器内核版本信息

获取浏览器的名字加版本信息 function getBrowserInfo() { var agent = navigator.userAgent.toLowerCase(); var regStr_ie = /msie [\d.]+;/gi; var regStr_ff = /firefox\/[\d.]+/gi var regStr_chrome = /chrome\/[\d.]+/gi; var regStr_saf = /safari\/[\d.]+/gi; //IE if(agent.