200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 在ASP.NET Core中获取客户端IP地址

在ASP.NET Core中获取客户端IP地址

时间:2024-01-16 21:04:15

相关推荐

在ASP.NET Core中获取客户端IP地址

随着的发展,有不同的方式从请求中访问客户端IP地址。WebForms和MVC Web应用程序只是访问当前HTTP上下文的请求。

var ip = HttpContext.Current.Request.UserHostAddress;

或者只是直接引用当前的Request

var ip = Request.UserHostAddress;

但是,这在 Core 2.0及更高版本中不起作用。您必须从ConfigureServices方法中的Startup.cs类中注入HttpContextAccessor实例。

public void ConfigureServices(IServiceCollection services){services.AddMvc();services.AddSingleton <IHttpContextAccessor,HttpContextAccessor>();}

现在我们需要在我们的控制器构造函数中使用它并将其分配给控制器级别声明的变量。这样,它可以从控制器中的所有Actions访问。

[Route("api/[controller]")][ApiController]public class IPAddressController : ControllerBase{private readonly IHttpContextAccessor httpContextAccessor;public IPAddressController(IHttpContextAccessor httpContextAccessor){this.httpContextAccessor = httpContextAccessor;}[HttpGet]public IActionResult Get(){return Content(this.httpContextAccessor.HttpContext.Connection.RemoteIpAddress.ToString());}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。