代碼問題

来源:10-3 文档点赞功能开发

齊帥

2021-04-27

public String getRemoteIp(HttpServletRequest request) {
    String ip = request.getHeader("x-forwarded-for");
    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.getRemoteAddr();
    }
    return ip;
}

老師可以請你解釋一下這段代碼的意思嗎?我想了解

写回答

1回答

甲蛙

2021-04-29

这个从请求头里获取相关的信息,比如这个请求如果是跳转的,那么就会带上x-forward-for,如果是代理的就会带上Proxy-Client-IP,通过这些参数就可以知道原始的IP。

大概是这样,A客户端,通过x,调用到了y应用接口,正常y只知道这个应用是从x来的,通过这个方法可以拿到原始的A

2
0

Spring Boot+Vue3前后端分离,实战wiki知识库系统

一课掌握前后端最火框架,更有职场竞争力

2524 学习 · 1671 问题

查看课程

相似问题

代碼問題

回答 1

代碼問題

回答 1

代碼問題

回答 1

git問題

回答 1