asp.net实现获取客户端详细信息

前端技术 2023/09/09 .NET

本文实例讲述了asp.net实现获取客户端详细信息代码。分享给大家供大家参考。具体如下:
运行效果截图如下:

具体代码如下:

其中aspx页面的控件代码:

复制代码 代码如下:
<asp:ListBox runat=\"server\" ID=\"lbHoverTreeInfo\" ClientIDMode=\"Static\"> </asp:ListBox>

以下是实现代码:

using System;
using System.Web;
using System.Web.UI;

namespace HoverTreeTool.HvtInfo.KeleyiClient
{
public partial class Index : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string userAgent = Request.UserAgent == null ? \"无\" : Request.UserAgent;
if (!IsPostBack)
{lbHoverTreeInfo.Items.Add(\"您的系统信息为:\");
lbHoverTreeInfo.Items.Add(\"客户端IP[Page.Request.UserHostAddress]:\"+ Page.Request.UserHostAddress);
lbHoverTreeInfo.Items.Add(\"浏览器类型[Request.Browser.Browser]:\" + Request.Browser.Browser);
lbHoverTreeInfo.Items.Add(\"浏览器标识[Request.Browser.Id]:\" + Request.Browser.Id);
lbHoverTreeInfo.Items.Add(\"浏览器版本号[Request.Browser.Version]:\" + Request.Browser.Version);
lbHoverTreeInfo.Items.Add(\"浏览器是不是测试版本[Request.Browser.Beta]:\" + Request.Browser.Beta);
lbHoverTreeInfo.Items.Add(\"浏览器类型[Request.Browser.Type]:\" + Request.Browser.Type);
lbHoverTreeInfo.Items.Add(\"是否支持框架网页[Request.Browser.Frames]:\" + Request.Browser.Frames);
lbHoverTreeInfo.Items.Add(\"是否支持Cookie[Request.Browser.Cookies]:\" + Request.Browser.Cookies);
lbHoverTreeInfo.Items.Add(\"浏览器JScript版本[Request.Browser.JScriptVersion]:\" + Request.Browser.JScriptVersion);
lbHoverTreeInfo.Items.Add(\"屏幕分辨率宽[System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width ]]:\" + System.Windows.Forms.Screen.PrimaryScreen.Bounds.Width);
lbHoverTreeInfo.Items.Add(\"屏幕分辨率高[System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height ]]:\" + System.Windows.Forms.Screen.PrimaryScreen.Bounds.Height);
lbHoverTreeInfo.Items.Add(\"浏览器类型[Request.Browser.Type]:\" + Request.Browser.Type);
lbHoverTreeInfo.Items.Add(\"客户端IP[GetHoverTreeIp()]:\" + GetHoverTreeIp());
lbHoverTreeInfo.Items.Add(\"客户端的操作系统[Request.Browser.Platform]:\" + Request.Browser.Platform);
lbHoverTreeInfo.Items.Add(\"客户端的操作系统[GetHoverTreeOSName(userAgent)]:\" + GetHoverTreeOSName(userAgent));
lbHoverTreeInfo.Items.Add(\"是不是win16系统[Request.Browser.Win16]:\" + Request.Browser.Win16);
lbHoverTreeInfo.Items.Add(\"是不是win32系统[Request.Browser.Win32]:\" + Request.Browser.Win32);
lbHoverTreeInfo.Items.Add(\"客户端.NET Framework版本:Request.Browser.ClrVersion]:\" + Request.Browser.ClrVersion);
lbHoverTreeInfo.Items.Add(\"是否支持Java[Request.Browser.JavaApplets]:\" + Request.Browser.JavaApplets);

if (Request.ServerVariables[\"HTTP_UA_CPU\"] == null)
lbHoverTreeInfo.Items.Add(\"CPU 类型[Request.ServerVariables[\\\"HTTP_UA_CPU\\\"]]:未知\");
else
lbHoverTreeInfo.Items.Add(\"CPU 类型[Request.ServerVariables[\\\"HTTP_UA_CPU\\\"]]:\" + Request.ServerVariables[\"HTTP_UA_CPU\"]);

lbHoverTreeInfo.Items.Add(\"UserAgent信息[Request.UserAgent]:\" + userAgent);
lbHoverTreeInfo.Items.Add(\"By 何问起工具 http://tool.hovertree.com/info/client/\");

}
}

/// <summary>
/// 获取真实IP
/// </summary>
/// <returns></returns>
public string GetHoverTreeIp()
{
string result = HttpContext.Current.Request.ServerVariables[\"HTTP_X_FORWARDED_FOR\"];
if (null == result || result == String.Empty)
{
result = HttpContext.Current.Request.ServerVariables[\"REMOTE_ADDR\"];
}
if (null == result || result == String.Empty)
{
result = HttpContext.Current.Request.UserHostAddress;
}
return result;
}

/// <summary>
/// 根据 User Agent 获取操作系统名称
/// </summary>
private string GetHoverTreeOSName(string userAgent)
{
string m_hvtOsVersion = \"未知\";
if (userAgent.Contains(\"NT 6.4\"))
{
m_hvtOsVersion = \"Windows 10\";
}
else
if (userAgent.Contains(\"NT 6.3\"))
{
m_hvtOsVersion = \"Windows 8.1\";
}
else
if (userAgent.Contains(\"NT 6.2\"))
{
m_hvtOsVersion = \"Windows 8\";
}
else
if (userAgent.Contains(\"NT 6.1\"))
{
m_hvtOsVersion = \"Windows 7\";
}else
if (userAgent.Contains(\"NT 6.0\"))
{
m_hvtOsVersion = \"Windows Vista/Server 2008\";
}
else if (userAgent.Contains(\"NT 5.2\"))
{
m_hvtOsVersion = \"Windows Server 2003\";
}
else if (userAgent.Contains(\"NT 5.1\"))
{
m_hvtOsVersion = \"Windows XP\";
}
else if (userAgent.Contains(\"NT 5\"))
{
m_hvtOsVersion = \"Windows 2000\";
}
else if (userAgent.Contains(\"NT 4\"))
{
m_hvtOsVersion = \"Windows NT4\";
}
else if (userAgent.Contains(\"Me\"))
{
m_hvtOsVersion = \"Windows Me\";
}
else if (userAgent.Contains(\"98\"))
{
m_hvtOsVersion = \"Windows 98\";
}
else if (userAgent.Contains(\"95\"))
{
m_hvtOsVersion = \"Windows 95\";
}
else if (userAgent.Contains(\"Mac\"))
{
m_hvtOsVersion = \"Mac\";
}
else if (userAgent.Contains(\"Unix\"))
{
m_hvtOsVersion = \"UNIX\";
}
else if (userAgent.Contains(\"Linux\"))
{
m_hvtOsVersion = \"Linux\";
}
else if (userAgent.Contains(\"SunOS\"))
{
m_hvtOsVersion = \"SunOS\";
}
return m_hvtOsVersion;
}

}
}

以上就是asp.net获取客户端浏览器及主机信息的关键代码,希望对大家的学习有所帮助。

本文地址:https://www.stayed.cn/item/23819

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。