asp.net實(shí)現(xiàn)獲取客戶端詳細(xì)信息
本文實(shí)例講述了asp.net實(shí)現(xiàn)獲取客戶端詳細(xì)信息代碼。分享給大家供大家參考。具體如下:
運(yùn)行效果截圖如下:

具體代碼如下:
其中aspx頁(yè)面的控件代碼:
以下是實(shí)現(xiàn)代碼:
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 ? "無(wú)" : Request.UserAgent;
if (!IsPostBack)
{lbHoverTreeInfo.Items.Add("您的系統(tǒng)信息為:");
lbHoverTreeInfo.Items.Add("客戶端IP[Page.Request.UserHostAddress]:"+ Page.Request.UserHostAddress);
lbHoverTreeInfo.Items.Add("瀏覽器類型[Request.Browser.Browser]:" + Request.Browser.Browser);
lbHoverTreeInfo.Items.Add("瀏覽器標(biāo)識(shí)[Request.Browser.Id]:" + Request.Browser.Id);
lbHoverTreeInfo.Items.Add("瀏覽器版本號(hào)[Request.Browser.Version]:" + Request.Browser.Version);
lbHoverTreeInfo.Items.Add("瀏覽器是不是測(cè)試版本[Request.Browser.Beta]:" + Request.Browser.Beta);
lbHoverTreeInfo.Items.Add("瀏覽器類型[Request.Browser.Type]:" + Request.Browser.Type);
lbHoverTreeInfo.Items.Add("是否支持框架網(wǎng)頁(yè)[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("客戶端的操作系統(tǒng)[Request.Browser.Platform]:" + Request.Browser.Platform);
lbHoverTreeInfo.Items.Add("客戶端的操作系統(tǒng)[GetHoverTreeOSName(userAgent)]:" + GetHoverTreeOSName(userAgent));
lbHoverTreeInfo.Items.Add("是不是win16系統(tǒng)[Request.Browser.Win16]:" + Request.Browser.Win16);
lbHoverTreeInfo.Items.Add("是不是win32系統(tǒng)[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 何問(wèn)起工具 http://tool.hovertree.com/info/client/");
}
}
/// <summary>
/// 獲取真實(shí)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>
/// 根據(jù) User Agent 獲取操作系統(tǒng)名稱
/// </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獲取客戶端瀏覽器及主機(jī)信息的關(guān)鍵代碼,希望對(duì)大家的學(xué)習(xí)有所幫助。
- ASP.NET簡(jiǎn)單獲取服務(wù)端和客戶端計(jì)算機(jī)名稱的方法
- 獲取asp.net服務(wù)器控件的客戶端ID和Name的實(shí)現(xiàn)方法
- ASP.net中獲取客戶端參數(shù)操作系統(tǒng)信息
- ASP.Net獲取客戶端網(wǎng)卡MAC的小例子
- Asp.net獲取客戶端IP常見(jiàn)代碼存在的偽造IP問(wèn)題探討
- 獲取客戶端IP地址c#/vb.net各自實(shí)現(xiàn)代碼
- ASP.NET獲取真正的客戶端IP地址的6種方法
- jquery獲取ASP.NET服務(wù)器端控件dropdownlist和radiobuttonlist生成客戶端HTML標(biāo)簽后的value和text值
- .NET獲取客戶端的操作系統(tǒng)版本、瀏覽器版本和IP地址
相關(guān)文章
ASP.NET Core 3.x 并發(fā)限制的實(shí)現(xiàn)代碼
這篇文章主要介紹了ASP.NET Core 3.x 并發(fā)限制的實(shí)現(xiàn)代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
asp.net得到本機(jī)數(shù)據(jù)庫(kù)實(shí)例的兩種方法代碼
這篇文章介紹了asp.net得到本機(jī)數(shù)據(jù)庫(kù)實(shí)例的兩種方法代碼,有需要的朋友可以參考一下2013-07-07
asp.net 未能寫入輸出文件--“拒絕訪問(wèn)的解決辦法
這個(gè)是網(wǎng)站部署在IIS7上出現(xiàn)的一個(gè)問(wèn)題2012-12-12
ASP.NET MVC4 利用uploadify.js多文件上傳
本文主要介紹了ASP.NET MVC4利用uploadify.js實(shí)現(xiàn)多文件上傳的方法代碼。具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-03-03
ASP.NET服務(wù)器控件開發(fā)(1)封裝html
在我們的項(xiàng)目開發(fā)中,由于ASP.NET的服務(wù)器控件功能有限,所以我們經(jīng)常會(huì)自己定義特定的服務(wù)器控件,來(lái)滿足開發(fā)中特定的業(yè)務(wù)要求??梢?jiàn)知道如何開發(fā)ASP.NET服務(wù)器控件是非常有必要的2015-12-12
.Net Core WebApi的簡(jiǎn)單創(chuàng)建以及使用方法
這篇文章主要給大家介紹了關(guān)于.Net Core WebApi的簡(jiǎn)單創(chuàng)建以及使用方法的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用.Net Core WebApi具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
asp.net jquery無(wú)刷新分頁(yè)插件(jquery.pagination.js)
采用Jquery無(wú)刷新分頁(yè)插件jquery.pagination.js 實(shí)現(xiàn)無(wú)刷新分頁(yè)效果:本示例Handler中采用StringBuilder的append方法追加HTML,小數(shù)據(jù)量可以,但是大數(shù)據(jù)或是布局常變,建議返回JSON格式的數(shù)據(jù),性能和靈活性更好,望使用者好好把握2013-01-01
Asp.net的GridView控件實(shí)現(xiàn)單元格可編輯方便用戶使用
考慮到用戶使用方便,減少?gòu)棾鲰?yè)面,采用點(diǎn)“編輯”按鈕無(wú)需彈出頁(yè)面直接當(dāng)前行的單元格內(nèi)容就能編輯,思路及代碼如下,有此需求的朋友可以參考下,希望對(duì)大家有所幫助2013-08-08
ASP.NET?MVC前臺(tái)動(dòng)態(tài)添加文本框并在后臺(tái)使用FormCollection接收值
這篇文章介紹了ASP.NET?MVC前臺(tái)動(dòng)態(tài)添加文本框并在后臺(tái)使用FormCollection接收的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08

