获取接口执行时间和访问ip

Posted 一枚新人小菜鸡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取接口执行时间和访问ip相关的知识,希望对你有一定的参考价值。

1.先获取结果执行时间

 //开始时间
    long startTime=System.currentTimeMillis();
    //结束时间
    long endTime=System.currentTimeMillis();
    //结束时间-开始时间/1000=秒级
    float excTime=(float)(endTime-startTime)/1000;
    System.err.println("执行时间:"+excTime+"s");

2.获取访问接口ip地址

工具类 IpUtil

public class IpUtil {
    public static String getIpAddr(HttpServletRequest request) {
        String ip = request.getHeader("X-Real-IP");
        if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) {
            if(ip.contains("../")||ip.contains("..\\\\")){
                return "";
            }
            return ip;
        }
        ip = request.getHeader("X-Forwarded-For");
        if (!StringUtils.isBlank(ip) && !"unknown".equalsIgnoreCase(ip)) {
            // 多次反向代理后会有多个IP值,第一个为真实IP。
            int index = ip.indexOf(',');
            if (index != -1) {
                ip= ip.substring(0, index);
            }
            if(ip.contains("../")||ip.contains("..\\\\")){
                return "";
            }
            return ip;
        } else {
            ip=request.getRemoteAddr();
            if(ip.contains("../")||ip.contains("..\\\\")){
                return "";
            }
            if(ip.equals("0:0:0:0:0:0:0:1")){
                ip="127.0.0.1";
            }
            return ip;
        }

    }
}

以上是关于获取接口执行时间和访问ip的主要内容,如果未能解决你的问题,请参考以下文章

获取接口执行时间和访问ip

获取接口执行时间和访问ip

获取访问接口的IP地址(绝对好用)

设置和获取与执行环境相关的信息?

是否可以动态编译和执行 C# 代码片段?

JMeter接口测试-模块控制器