博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net获取客户端浏览器及主机信息
阅读量:6293 次
发布时间:2019-06-22

本文共 4789 字,大约阅读时间需要 15 分钟。

原文:

在线预览效果:

其中aspx页面的控件代码:

以下是实现代码:

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 ///  46 /// 获取真实IP 47 ///  48 /// 
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 /// 64 /// 根据 User Agent 获取操作系统名称 65 /// 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 }

转载自:

开发技术文章: 

 

你可能感兴趣的文章
MacOS High Sierra 12 13系统转dmg格式
查看>>
关于再次查看已做的多选题状态逻辑问题
查看>>
动态下拉菜单,非hover
查看>>
政府安全资讯精选 2017年第十六期 工信部发布关于规范互联网信息服务使用域名的通知;俄罗斯拟建立备用DNS;Google打击安卓应用在未经同意情况下收集个人信...
查看>>
简单易懂的谈谈 javascript 中的继承
查看>>
iOS汇编基础(四)指针和macho文件
查看>>
Laravel 技巧锦集
查看>>
Android 使用 ViewPager+RecyclerView+SmartRefreshLayout 实现顶部图片下拉视差效果
查看>>
Flutter之基础Widget
查看>>
写给0-3岁产品经理的12封信(第08篇)——产品运营能力
查看>>
ArcGIS Engine 符号自动化配置工具实现
查看>>
小程序 · 跳转带参数写法,兼容url的出错
查看>>
flutter error
查看>>
Flask框架从入门到精通之模型数据库配置(十一)
查看>>
10年重新出发
查看>>
2019年-年终总结
查看>>
聊聊elasticsearch的RoutingService
查看>>
让人抓头的Java并发(一) 轻松认识多线程
查看>>
从源码剖析useState的执行过程
查看>>
地包天如何矫正?
查看>>