C#.NET IP地址工具类WebAPI服务器使用
![]() C# Code: /// <summary> /// IP地址工具类 /// </summary> public static class IPHelper { /// <summary> /// 获取IP地址 /// </summary> /// <param name="request"></param> /// <returns></returns> public static string GetIPAddress(HttpRequestMessage request) { string ip = ""; if (request.Properties.ContainsKey("MS_OwinContext")) { ip = ((OwinContext)request.Properties["MS_OwinContext"]).Request.RemoteIpAddress; } else if (request.Properties.ContainsKey("MS_HttpContext")) { ip = ((HttpContextWrapper)request.Properties["MS_HttpContext"]).Request.UserHostAddress; } else if (request.Properties.ContainsKey(RemoteEndpointMessageProperty.Name)) { ip = ((RemoteEndpointMessageProperty)request.Properties[RemoteEndpointMessageProperty.Name]).Address; } if (ip == "::1") ip = "127.0.0.1"; if (string.IsNullOrEmpty(ip) || !IsIP(ip)) return "127.0.0.1"; else return ip; } /// <summary> /// 获取IP地址 /// </summary> /// <param name="request"></param> /// <returns></returns> public static string GetIPAddress(HttpRequest request) { string result = String.Empty; result = request.ServerVariables["HTTP_CDN_SRC_IP"]; if (string.IsNullOrEmpty(result)) result = request.ServerVariables["REMOTE_ADDR"]; if (string.IsNullOrEmpty(result)) result = request.UserHostAddress; if (string.IsNullOrEmpty(result) || !IsIP(result)) return "127.0.0.1"; return result; } /// <summary> /// 是否IP /// </summary> /// <param name="ip"></param> /// <returns></returns> public static bool IsIP(string ip) { return System.Text.RegularExpressions.Regex.IsMatch(ip, @"^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$"); } } //来源:C/S框架网(www.csframework.com) QQ:1980854898
参考文档:
C#.NET C/S结构版本自动升级解决方案之TCP服务器 C#.NET IP地址正则表达式验证 WebApi服务器对IP地址黑名单限制 C# 阿里云ECS服务器SMTP发送邮件使用80端口 - 原创! WebApi服务端开发框架成功案例-对接三方支付平台连连支付C#.NET VS.NET后端框架,C#.NET开发的服务器端开发框架 - C/S框架网 C#.NET IP端口绑定SSL证书支持HTTPS协议(用于Win服务自承载WebApi服务器) - C/S框架网原创 C# ASP.NET WebApi服务器搭建详解 - IIS服务承载(IIS Hosting IIS宿主) C# ASP.NET WebApi服务器搭建详解 - 自承载(Self Hosting) C# ASP.NET WebApi服务器搭建详解 - Win服务承载(Windows Service Hosting宿主) WebApi实例教程和使用方法:部署和发布WebApi到IIS服务器 微信小程序后端框架 | C# ASP.NET服务端WebApi快速开发框架平台 运行ASP.NET 自承载WebApi服务器报错:未能加载文件或程序集System.Web.Http或它的某一个依赖项 C#根据第三方提供的IP查询服务获取公网外网IP地址 .Net开发服务器服务端应用程序 - WebApi后端开发框架
其它资料:
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 | |