我开发了一个Web应用程序,它作为Web应用程序部署在Azure上。
我需要获取客户端的IP地址,以便我可以使用GeoIP API来获取客户端连接的国家。
那么这里是我的问题,当他们发送请求查看主页时,如何获取客户端的IP地址?我正在使用ASP.NET MVC。
我开发了一个Web应用程序,它作为Web应用程序部署在Azure上。
我需要获取客户端的IP地址,以便我可以使用GeoIP API来获取客户端连接的国家。
那么这里是我的问题,当他们发送请求查看主页时,如何获取客户端的IP地址?我正在使用ASP.NET MVC。
尝试以下方法(在使用 ASP.NET Core 2.x 的 Azure Web 应用上进行了验证):
using Microsoft.AspNetCore.Http.Features;
using System.Net;
....
var connection = HttpContext.Features.Get<IHttpConnectionFeature>();
IPAddress clientIP = connection.RemoteIpAddress;
Request.ServerVariables["REMOTE_ADDR"]
不能用? - hardkodedRequest.UserHostAddress
是什么? - Alex Kudryashev