asp.net – 获取用户的IP地址
发布时间:2020-05-23 14:52:14 所属栏目:asp.Net 来源:互联网
导读:如何获取当前访问者的IP地址? 编辑:还发现一个有趣的问题,关于IP相关的HTTP头 here。 Edit2:如上面提供的注释和链接中所述,HTTP_X_FORWARDED_FOR头可能包含多个以逗号分隔的IP地址。我没有面对这种情况,但假设需要对我的回答进行一些更正。 我使用这个
|
如何获取当前访问者的IP地址? 解决方法编辑:还发现一个有趣的问题,关于IP相关的HTTP头 here。Edit2:如上面提供的注释和链接中所述,HTTP_X_FORWARDED_FOR头可能包含多个以逗号分隔的IP地址。我没有面对这种情况,但假设需要对我的回答进行一些更正。 我使用这个代码获取IP地址(它返回IPAddress.None值如果由于某些原因失败): /// <summary>
/// Gets the IP address of the request.
/// <remarks>
/// This method is more useful than built in because in some cases it may show real user IP address even under proxy.
/// <summary>
/// Gets the IP address of the request.
/// <remarks>
/// This method is more useful than built in because in some cases it may show real user IP address even under proxy.
/// The <see cref="System.Net.IPAddress.None" /> value will be returned if getting is failed.
/// </remarks>
/// </summary>
/// <param name="request">The HTTP request object.</param>
/// <returns></returns>
public static IPAddress GetIp(this HttpRequest request)
{
string ipString;
if (string.IsNullOrEmpty(request.ServerVariables["HTTP_X_FORWARDED_FOR"]))
{
ipString = request.ServerVariables["REMOTE_ADDR"];
}
else
{
ipString = request.ServerVariables["HTTP_X_FORWARDED_FOR"].Split(",".ToCharArray(),StringSplitOptions.RemoveEmptyEntries)
.FirstOrDefault();
}
IPAddress result;
if (!IPAddress.TryParse(ipString,out result))
{
result = IPAddress.None;
}
return result;
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – Donut hole缓存 – 排除MiniProfiler.Rende
- asp.net-mvc-4 – ValidateInput(false)vs AllowHtml
- asp.net-membership – 如何在成员资格提供者上实现最佳自定
- asp.net-mvc – ASP.NET MVC在新窗口中打开pdf文件
- 在ASP.NET MVC Core控制器的构造函数中设置ViewBag属性
- .net – 包恢复失败.回滚包更改 – Serilog.AspNetCore
- asp.net – 会话 – 多个浏览器选项卡 – 不同的会话?
- 从ASP.NET项目中的发布版本中排除页面
- ASP.NET大师:使用会话变量有哪些优点/缺点?
- asp.net-mvc-3 – 使用ASP.NET MVC3 Razor进行字符串连接
推荐文章
站长推荐
- 调试 – 如何调试经典ASP?
- asp.net-mvc – 在ASP.NET MVC中的View和Partial
- ASP.NET MVC错误处理 – 删除aspxerrorpath
- asp.net-mvc – 如何将NUnit作为ASP.NET MVC的测
- asp.net – ScriptManager必须出现在任何需要它的
- asp.net – 在Web API中获取匹配的路由名称
- asp.net-mvc – 从ASP.NET MVC中的部分视图中删除
- StructureMap和ASP .Net Web API和.Net Framewor
- .net – Control.ResolveUrl与Control.ResolveCl
- 使用WCF进行ASP.NET聊天
热点阅读
