如何在springboot + vue前后端分离的项目里获取用户浏览器内网IP

问题关键在于虽然能取到IP,但是获取到的IP是本地服务器的IP。由于vue也是在我本地电脑上启动的,所以这个获取到的IP可能是前端vue的web服务器的IP或者后台springboot自己的ip?

没有使用各种代理,使用getRemoteAddr()就能取到。

代码:

if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
          ip = request.getRemoteAddr();
        }
        if ("0:0:0:0:0:0:0:1".equals(ip)) {
            ip="127.0.0.1";
        }
        String host=request.getRemoteHost();
        int port = request.getRemotePort();
        System.out.println("port==>"+port);
        System.out.println("host==>"+host);
        System.out.println(ip);

结果:

port==>52906
host==>192.168.11.76
192.168.11.76

这个port为啥是52906。。我的天

部署后使用nginx配置一下就好了

52906这个端口是客户端开的端口,客户端调用服务端接口也是需要占用一个端口的,你可以刷新看看,客户端端口是不定的。

https://www.csdn.net/gather_18/MtTaUg3sNzU3NzgtZG93bmxvYWQO0O0O.html