博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net客户端IP跟踪
阅读量:4932 次
发布时间:2019-06-11

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

///         /// 获取客户端IP地址(无视代理)        ///         /// 
若失败则返回回送地址
public static string GetWebClientIp() { string userHostAddress = HttpContext.Current.Request.UserHostAddress; if (HttpContext.Current.Request.ServerVariables["HTTP_VIA"] != null) // using proxy { userHostAddress = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString(); // Return real client IP. } if (string.IsNullOrEmpty(userHostAddress)) { userHostAddress = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]; } //最后判断获取是否成功,并检查IP地址的格式(检查其格式非常重要) if (!string.IsNullOrEmpty(userHostAddress) && IsIP(userHostAddress)) { return userHostAddress; } return "127.0.0.1"; }
///         /// 检查IP地址格式        ///         ///         /// 
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?)$"); }

 

转载于:https://www.cnblogs.com/xhrGeek/p/6322246.html

你可能感兴趣的文章
【秒用Win7三种电源模式让你的笔记本更适应环境】
查看>>
PHP “引号兄弟”
查看>>
IOS代码布局(五) UICollectionView
查看>>
Django之Models(一)
查看>>
html的那些标签
查看>>
常见的几种数据加密与应用场景
查看>>
Android sendToTarget
查看>>
express框架结合jade模板引擎使用
查看>>
输出的巧妙思想(解题技巧)
查看>>
python装饰器
查看>>
获取两个日期之间的所有日期列表
查看>>
第一章 算法在计算中的作用
查看>>
在CocoaPod中安装BmobSDK
查看>>
webpack入门之教你搭建简单的框架
查看>>
开通的第一篇
查看>>
[学习] nofollow
查看>>
Javascript 方法apply和call的差别
查看>>
POJ Cow Exhibition
查看>>
disruptor实操作手冊(二)
查看>>
动态规划 - 活动选择问题
查看>>