.NET获取客户端的操作系统、IP地址、浏览器版本

简介: 获取客户端的操作系统:#region 获取操作系统版本号/// /// 获取操作系统版本号 /// /// public static string GetOSVersion(){  //UserAgent   var userAgent = HttpContext.

获取客户端的操作系统:

#region 获取操作系统版本号

/// <summary> 
/// 获取操作系统版本号 
/// </summary> 
/// <returns></returns>

public static string GetOSVersion()
{
  //UserAgent 
  var userAgent = HttpContext.Current.Request.ServerVariables["HTTP_USER_AGENT"];

  var osVersion = "未知";
  if (userAgent.Contains("NT 10.0"))
  {
    osVersion = "Windows 10";
  }
  else if (userAgent.Contains("NT 6.3"))
  {
    osVersion = "Windows 8.1";
  }
  else if (userAgent.Contains("NT 6.2"))
  {
    osVersion = "Windows 8";
  }

  else if (userAgent.Contains("NT 6.1"))
  {
    osVersion = "Windows 7";
  }
  else if (userAgent.Contains("NT 6.0"))
  {
    osVersion = "Windows Vista/Server 2008";
  }
  else if (userAgent.Contains("NT 5.2"))
  {
    osVersion = "Windows Server 2003";
  }
  else if (userAgent.Contains("NT 5.1"))
  {
    osVersion = "Windows XP";
  }
  else if (userAgent.Contains("NT 5"))
  {
    osVersion = "Windows 2000";
  }
  else if (userAgent.Contains("NT 4"))
  {
    osVersion = "Windows NT4";
  }
  else if (userAgent.Contains("Me"))
  {
    osVersion = "Windows Me";
  }
  else if (userAgent.Contains("98"))
  {
    osVersion = "Windows 98";
  }
  else if (userAgent.Contains("95"))
  {
    osVersion = "Windows 95";
  }
  else if (userAgent.Contains("Mac"))
  {
    osVersion = "Mac";
  }
  else if (userAgent.Contains("Unix"))
  {
    osVersion = "UNIX";
  }
  else if (userAgent.Contains("Linux"))
  {
    osVersion = "Linux";
  }
  else if (userAgent.Contains("SunOS"))
  {
    osVersion = "SunOS";
  }
  return osVersion;
}
#endregion

获取客户端的IP地址:

#region 获取IP地址

/// <summary> 
/// 获取IP地址
/// </summary> 
/// <returns></returns>

public static string GetIPAddress()
{
  string ipv4 = String.Empty;
  foreach (IPAddress IPA in Dns.GetHostAddresses(HttpContext.Current.Request.UserHostAddress))
  {
    if (IPA.AddressFamily.ToString() == "InterNetwork")
    {
      ipv4 = IPA.ToString();
      break;
    }
  }
  if (ipv4 != String.Empty)
  {
    return ipv4;
  }
  foreach (IPAddress IPA in Dns.GetHostAddresses(Dns.GetHostName()))
  {
    if (IPA.AddressFamily.ToString() == "InterNetwork")
    {
      ipv4 = IPA.ToString();
      break;
    }
  }
  return ipv4;
}

#endregion

获取客户端的浏览器版本:

#region 获取浏览器版本号

/// <summary> 
/// 获取浏览器版本号 
/// </summary> 
/// <returns></returns> 
public static string GetBrowser()
{ 
  HttpBrowserCapabilities bc = HttpContext.Current.Request.Browser;
  return bc.Browser + bc.Version;
}

#endregion

 

目录
相关文章
|
3月前
|
运维 Prometheus 监控
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
|
3月前
|
开发框架 .NET C#
在 ASP.NET Core 中创建 gRPC 客户端和服务器
本文介绍了如何使用 gRPC 框架搭建一个简单的“Hello World”示例。首先创建了一个名为 GrpcDemo 的解决方案,其中包含一个 gRPC 服务端项目 GrpcServer 和一个客户端项目 GrpcClient。服务端通过定义 `greeter.proto` 文件中的服务和消息类型,实现了一个简单的问候服务 `GreeterService`。客户端则通过 gRPC 客户端库连接到服务端并调用其 `SayHello` 方法,展示了 gRPC 在 C# 中的基本使用方法。
64 5
在 ASP.NET Core 中创建 gRPC 客户端和服务器
|
3月前
|
Web App开发 API Windows
取接口访问者信息[IP,浏览器,操作系统]免费API接口教程
此API用于获取访问者的IP地址、浏览器和操作系统信息,支持70多种浏览器和操作系统。通过POST或GET请求至`https://cn.apihz.cn/api/ip/getapi.php`,需提供用户ID和KEY。返回结果包括状态码、消息、IP、浏览器和操作系统信息。示例:{&quot;code&quot;:200,&quot;ip&quot;:&quot;175.154.88.178&quot;,&quot;browser&quot;:&quot;Chrome&quot;,&quot;os&quot;:&quot;Windows 10&quot;}。详情见官网文档。
|
4月前
|
存储 消息中间件 NoSQL
Redis 入门 - C#.NET Core客户端库六种选择
Redis 入门 - C#.NET Core客户端库六种选择
108 8
|
4月前
|
网络协议 Unix Linux
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
一个.NET开源、快速、低延迟的异步套接字服务器和客户端库
124 4
|
6月前
|
Web App开发
Chrome——谷歌浏览器chrome如何模拟其他客户端
Chrome——谷歌浏览器chrome如何模拟其他客户端
138 1
Chrome——谷歌浏览器chrome如何模拟其他客户端
|
6月前
|
开发框架 JavaScript .NET
Vue与ASP.NET Core Web Api设置localhost与本地ip地址皆可访问
Vue与ASP.NET Core Web Api设置localhost与本地ip地址皆可访问
69 0
|
8月前
|
NoSQL 大数据 Redis
分享5款.NET开源免费的Redis客户端组件库
分享5款.NET开源免费的Redis客户端组件库
128 1
|
9月前
|
存储 JSON 安全
[浏览器系列] : 客户端本地存储
[浏览器系列] : 客户端本地存储
|
9月前
|
JSON 编解码 Go
Golang深入浅出之-HTTP客户端编程:使用net/http包发起请求
【4月更文挑战第25天】Go语言`net/http`包提供HTTP客户端和服务器功能,简化高性能网络应用开发。本文探讨如何发起HTTP请求,常见问题及解决策略。示例展示GET和POST请求的实现。注意响应体关闭、错误处理、内容类型设置、超时管理和并发控制。最佳实践包括重用`http.Client`,使用`context.Context`,处理JSON以及记录错误日志。通过实践这些技巧,提升HTTP编程技能。
103 1

热门文章

最新文章