C# 服务端获取客户端 系统/浏览器/IP
/// <summary> /// 获取客户端操作系统版本 /// </summary> /// <returns></returns> public static string GetOSName() { if (HttpContext.Current == null || HttpContext.Current.Request == null || HttpContext.Current.Request.UserAgent == null) { return "未知"; } var userAgent = HttpContext.Current.Request.UserAgent.ToLower(); if (userAgent.Contains("android")) { return "Android"; } else if (userAgent.Contains("mac os x")) { return "ios"; } else if (userAgent.Contains("windows phone")) { return "Windows Phone"; } else if (userAgent.Contains("nt 10.0")) { return "Windows 10"; } else if (userAgent.Contains("NT 6.3")) { return "Windows8.1"; } else if (userAgent.Contains("NT 6.2")) { return "Windows8"; } else if (userAgent.Contains("nt 6.1")) { return "Windows 7"; } else if (userAgent.Contains("nt 6.0")) { return "Windows Vista/Server 2008"; } else if (userAgent.Contains("nt 5.2")) { return "Windows Server 2003"; } else if (userAgent.Contains("nt 5.1")) { return "Windows XP"; } else if (userAgent.Contains("nt 5")) { return "Windows 2000"; } else if (userAgent.Contains("nt 4")) { return "Windows NT4"; } else if (userAgent.Contains("me")) { return "Windows Me"; } else if (userAgent.Contains("98")) { return "Windows 98"; } else if (userAgent.Contains("95")) { return "Windows 95"; } else if (userAgent.Contains("mac")) { return "Mac"; } else if (userAgent.Contains("unix")) { return "UNIX"; } else if (userAgent.Contains("linux")) { return "Linux"; } else if (userAgent.Contains("sunos")) { return "SunOS"; } return "未知"; } /// <summary> /// 获取浏览器名称 /// </summary> /// <returns></returns> public static string GetBrowser() { if (HttpContext.Current == null || HttpContext.Current.Request == null || HttpContext.Current.Request.UserAgent == null) { return "未知"; } var userAgent = HttpContext.Current.Request.UserAgent.ToLower(); if (userAgent.Contains("opera/ucweb")) { return "UC Opera"; } else if (userAgent.Contains("openwave/ ucweb")) { return "UCOpenwave"; } else if (userAgent.Contains("ucweb")) { return "UC"; } else if (userAgent.Contains("360se")) { return "360"; } else if (userAgent.Contains("metasr")) { return "搜狗"; } else if (userAgent.Contains("maxthon")) { return "遨游"; } else if (userAgent.Contains("the world")) { return "世界之窗"; } else if (userAgent.Contains("tencenttraveler") || userAgent.Contains("qqbrowser")) { return "腾讯"; } else if (userAgent.Contains("chrome")) { return "Chrome"; } else if (userAgent.Contains("safari")) { return "safari"; } else if (userAgent.Contains("firefox")) { return "Firefox"; } else if (userAgent.Contains("opera")) { return "Opera"; } else if (userAgent.Contains("msie")) { return "IE"; } else { return System.Web.HttpContext.Current.Request.Browser.Browser; } } /// <summary> /// 取得客户端IP /// </summary> /// <returns></returns> public static string GetClientIp() { var result = "0.0.0.0"; if (HttpContext.Current == null && HttpContext.Current.Request == null) { return result; } result = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"]; if (result == null || result == String.Empty) { result = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; } if (result == null || result == String.Empty) { result = HttpContext.Current.Request.UserHostAddress; } if (result == null || result == String.Empty) { result = "0.0.0.0"; } return result; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)