c# - 获取浏览网站的用户的IP地址
问题描述
我正在尝试获取正在浏览网站的用户的 IP 地址,可能是通过手机或 PC。我试过使用一组代码,但我得到的是::1
,我可以知道这是错误的还是应该是这样的?
private string GetUser_IP()
{
string VisitorsIPAddr = string.Empty;
if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
{
VisitorsIPAddr = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
}
else if (HttpContext.Current.Request.UserHostAddress.Length != 0)
{
VisitorsIPAddr = HttpContext.Current.Request.UserHostAddress;
}
ipAddress = VisitorsIPAddr;
return ipAddress;
}
提前感谢您的帮助。
解决方案
::1
和127.0.0.1
和localhost
是一样的,他们的意思是这台电脑。您已连接到您拥有应用程序的同一台机器上的应用程序。尝试将应用程序部署到某个服务器。
请记住确保您获得的是公共 IP 地址还是私有 IP 地址。
推荐阅读
- java - 列表小于 getBatchSize() 的 jdbcTemplate.batchUpdate() 引发 IndexOutOfBoundsException 错误
- reactjs - hide and show external components in react
- python - RGB 颜色范围到 HSV 颜色范围
- node.js - 当使用 router.Post() 系统抛出 404 错误(找不到页面)
- amazon-web-services - AWS 网络负载均衡器和桥接模式
- php - Wordpress:自定义帖子类型永久删除帖子
- swift - 在 swiftUI 上关闭通知
- outlook - Microsoft Outlook Web 和桌面 + 加载项
- ios - UIViewController生命周期方法中何时调用super?
- google-sheets - 堆叠和分组条形图