zoukankan      html  css  js  c++  java
  • 获取访问用户的客户端IP(适用于公网与局域网).

     /** 
     * 获取访问用户的客户端IP(适用于公网与局域网). 
     */  
    public final String getIpAddr(final HttpServletRequest request)  
            throws Exception {  
        if (request == null) {  
            throw (new Exception("getIpAddr method HttpServletRequest Object is null"));  
        }  
        String ipString = request.getHeader("x-forwarded-for");  
        if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {  
            ipString = request.getHeader("Proxy-Client-IP");  
        }  
        if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {  
            ipString = request.getHeader("WL-Proxy-Client-IP");  
        }  
        if (StringUtils.isBlank(ipString) || "unknown".equalsIgnoreCase(ipString)) {  
            ipString = request.getRemoteAddr();  
        }  
      
        // 多个路由时,取第一个非unknown的ip  
        final String[] arr = ipString.split(",");  
        for (final String str : arr) {  
            if (!"unknown".equalsIgnoreCase(str)) {  
                ipString = str;  
                break;  
            }  
        }  
      
        return ipString;  
    }
  • 相关阅读:
    Jenkins安装以及邮件配置
    TUXEDO管理命令总结
    QTP的退出函数
    QTP 启动应用软件方法
    Robot framework 和RIDE 关系
    使用pycharm编写和运行RF脚本
    刷题-力扣-102. 二叉树的层序遍历
    刷题-力扣-反转链表
    刷题-牛客-判断链表中是否有环
    刷题-力扣-278. 第一个错误的版本
  • 原文地址:https://www.cnblogs.com/jcz1206/p/4903868.html
Copyright © 2011-2022 走看看