2、asp.net core 2.x上配置

第一步:在控制器中定义变量

private IHttpContextAccessor _accessor;

第二步: 控制器的构造函数进行注入

public ValuesController(IHttpContextAccessor accessor)
{
_accessor = accessor;
}

第三步:在action中 调用

_accessor.HttpContext.Connection.RemoteIpAddress.ToString()

第四步:我们应该要在startup.cs中配置IHttpContextAccessor

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

第五步:可以运行测试一下:

发现已经获取到IP地址啦。

注:在ASP.NET 2.1中,在startup.cs需要修改成以下的内容:

services.AddHttpContextAccessor();
services.TryAddSingleton<IActionContextAccessor, ActionContextAccessor>();

RemoteIpAddress是类型的IPAddress,不是string。它包含IPv4,IPv6和其他信息,它不像经典的ASP.NET,它对我们更有用。

.NET core ABP 获取远程IP地址的更多相关文章

  1. 负载均衡的场景下ASP.NET Core如何获取客户端IP地址

    在ASP.NET中,使用负载均衡时,可以通过ServerVariables获取客户端的IP地址. var ip = request.ServerVariables["HTTP_X_FORWA ...

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

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

  3. 从request获取远程IP地址

    public static String getIpAddr(HttpServletRequest request) { String ip = request.getHeader("X-F ...

  4. asp.net core使用jexus部署在linux无法正确 获取远程ip的解决办法

    asp.net core程序部署在centos7(下面的解决方案,其他系统都能使用,这里只是我自己部署在centos7),使用服务器jexus进行部署,AppHost模式. 因为请求是由jexus进行 ...

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

    一.前言 大家也知道服务端请求时我们获取的IP地址是包含在请求头中,因此这也大大便利了IP的获取. 在ASP.NET中,可以通过以下方式获取客户端的IP地址. HttpContext.Current. ...

  6. .net core webapi 后台获取客户端ip地址

    Asp.Net Core2.0获取客户IP地址,及解决发布到Ubuntu服务器获取不到正确IP解决办法   1.获取客户端IP地址实现方法(扩展类) 1 using Microsoft.AspNetC ...

  7. 论坛:获取当前原始请求中的远程IP地址

    topic.setIpAddr(ServletActionContext.getRequest().getRemoteAddr());//当前原始请求中的远程IP地址

  8. .net core获取本地Ip地址的方法

    笔记: /// <summary> /// 获取本地Ip地址 /// </summary> /// <returns></returns> public ...

  9. (转)【ASP.NET开发】获取客户端IP地址 via C#

    [ASP.NET开发]获取客户端IP地址 via C# 说明:本文中的内容是我综合博客园上的博文和MSDN讨论区的资料,再通过自己的实际测试而得来,属于自己原创的内容说实话很少,写这一篇是为了记录自己 ...

随机推荐

  1. 查看Python安装目录 -- 一个命令

    pip --version

  2. List<Object> 查询解析优化

    2018年3月16日 大型仪器设备分类查出后,需要展示个分类下总共有多少台设备.因为分类总共分三层,加起来数据700+.以后该系统上线设备可能达到2000+,这样统计每个分类下的设备可能会拖垮服务器. ...

  3. thinkphp配置到二级目录,不配置到根目录,访问除首页的其他路径都是404报错

    1.在nginx的配置里面,进行重定向 vi /etc/nginx/conf.d/default.conf 2.进入编辑 location /thinkphp/public { if (!-e $re ...

  4. zTree第二次

    需要注意的是:动态生成的树节点数据不是在后面拼接的,而是直接在done里面 <!DOCTYPE HTML> <HTML> <HEAD> <TITLE> ...

  5. P1082 射击比赛

    P1082 射击比赛 转跳点:

  6. c++链表演示

    #include<iostream> #include<string.h> #include<conio.h> using namespace std; #defi ...

  7. MongoDB 删除,添加副本集,并修改副本集IP等信息

    MongoDB 删除,添加副本集,并修改副本集IP等信息 添加副本,在登录到主节点下输入 rs.add("ip:port"); 删除副本 rs.remove("ip:po ...

  8. 【转载】Android Gradle Build Error:Some file crunching failed, see logs for details解决办法

    Android Gradle Build Error:Some file crunching failed, see logs for details解决办法 转载请标明出处: http://www. ...

  9. 用CSS编写多种常见的图形

    用CSS编写多种常见的图形 正方形与长方形 这个是最简单的,直接上代码 <!DOCTYPE html> <html> <head> <title>< ...

  10. Hibernate--起步

    1.配置对象 配置对象是你在任何 Hibernate 应用程序中创造的第一个 Hibernate 对象,并且经常只在应用程序初始化期间创造.它代表了 Hibernate 所需一个配置或属性文件.配置对 ...