zoukankan      html  css  js  c++  java
  • 获取对方请求的访问ip地址

    (很实用,哈哈)直接上代码

    import javax.servlet.http.HttpServletRequest;
    
    /**
     * http工具类
     */
    public class HttpUtil {
    	
    	private HttpUtil(){
        	
        }
    	
    	/**
    	 * 请求成功码
    	 */
    	public static final String successCode = "200";
    	/**
    	 * 用户新建或修改数据成功
    	 */
    	public static final String saveOrUpdate = "201";
    	/**
    	 * 请求失败码
    	 */
    	public static final String failCode = "500";
    	/**
    	 * 重新登陆码
    	 */
    	public static final String re_loginCode = "100";
    	/**
    	 * 没有权限
    	 */
    	public static final String unauth = "301";
    
    	/**
    	 * 验证码为空
    	 */
    	public static final String CodeNull = "302";
    
    
    	/**
    	 * 账号不存在
    	 */
    	public static final String NoUser = "304"	;
    
    
    	/**
    	 * 密码错误
    	 */
    	public static final String PasswordErro = "305"	;
    
    
    	/**
    	 * 验证码错误
    	 */
    	public static final String CodeErro = "306"	;
    
    	/**
    	 * 无效Token
    	 */
    	public static final String NoToken = "307"	;
    	
    	/**
    	 * Token格式错误
    	 */
    	public static final String TokenErr = "308"	;
    	
    	/**
    	 * 获取ip地址
    	 * @param request
    	 * @return
    	 */
    	public static String getIpAddress(HttpServletRequest request) {
    		String ip = request.getHeader("x-forwarded-for");
    //		String ip = request.getHeader("Proxy-Client-IP");//处理IP
    		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    			ip = request.getHeader("Proxy-Client-IP");
    		}
    		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    			ip = request.getHeader("WL-Proxy-Client-IP");
    		}
    		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    			ip = request.getHeader("HTTP_CLIENT_IP");
    		}
    		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    			ip = request.getHeader("HTTP_X_FORWARDED_FOR");
    		}
    		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    			ip = request.getRemoteAddr();
    		}
    		
    		if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
    	        //X-Real-IP:nginx服务代理 
    			ip = request.getHeader("X-Real-IP");
    	    }
    		if(ip!=null){
    			ip=ip.split(",")[0];
    //			if(ip.indexOf(",")>0){
    //				ip=ip.substring(0,ip.indexOf(","));
    //			}
    		}
     		return ip;
    	}
    	public static void main(String[] args) {
    		String ip="127.0.0.1,127.1.1.1";
    		ip=ip.split(",")[0];
    		System.out.println(ip);
    	}
    }
    
    
    	
    

      

  • 相关阅读:
    oracle_jdbc_insert_into
    MySQL 性能比较测试:MySQL 5.6 GA -vs- MySQL 5.5
    centos去下载mysql应该怎么选择linux版本
    centos_radhat升级系统
    phpmyadmin 配置方法
    js 判断js函数,变量是否存在
    mysqlbinlog- 处理二进制日志文件的实用工具 学习笔记
    linux基本命令
    4 MySQL程序概述(包含mysql配置文件配置原理)-学习笔记
    Python学习笔记4 高级特性_20170618
  • 原文地址:https://www.cnblogs.com/otways/p/11431352.html
Copyright © 2011-2022 走看看