在ASP.NET Core中获取客户端IP地址
生活随笔
收集整理的這篇文章主要介紹了
在ASP.NET Core中获取客户端IP地址
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
隨著ASP.NET的發(fā)展,有不同的方式從請求中訪問客戶端IP地址。WebForms和MVC Web應(yīng)用程序只是訪問當前HTTP上下文的請求。
?
var ip = HttpContext.Current.Request.UserHostAddress;?
或者只是直接引用當前的Request?
var ip = Request.UserHostAddress;但是,這在ASP.NET Core 2.0及更高版本中不起作用。您必須從ConfigureServices方法中的Startup.cs類中注入??HttpContextAccessor實例。
public void ConfigureServices(IServiceCollection services){services.AddMvc();services.AddSingleton <IHttpContextAccessor,HttpContextAccessor>();}現(xiàn)在我們需要在我們的控制器構(gòu)造函數(shù)中使用它并將其分配給控制器級別聲明的變量。這樣,它可以從控制器中的所有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());}}?
轉(zhuǎn)載于:https://www.cnblogs.com/ZaraNet/p/10142831.html
總結(jié)
以上是生活随笔為你收集整理的在ASP.NET Core中获取客户端IP地址的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: jmeter常用插件介绍
- 下一篇: asp.net ajax控件工具集 Au