栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

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

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

随着ASP.NET的发展,有不同的方式从请求中访问客户端IP地址。WebForms和MVC Web应用程序只是访问当前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 ();
        }

现在我们需要在我们的控制器构造函数中使用它并将其分配给控制器级别声明的变量。这样,它可以从控制器中的所有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());
        }
    }

原文出处:https://www.cnblogs.com/ZaraNet/p/10142831.html  

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/230522.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号