Google Cloud Run java program get real client ip address tools

package com.example.helloworld.utils;

import javax.servlet.http.HttpServletRequest;

/**
 * Created by yeqiang on 8/2/19.
 */
public class HttpUtils {
    private static final String[] HEADERS_TO_TRY = {
            "X-Forwarded-For",
            "Proxy-Client-IP",
            "WL-Proxy-Client-IP",
            "HTTP_X_FORWARDED_FOR",
            "HTTP_X_FORWARDED",
            "HTTP_X_CLUSTER_CLIENT_IP",
            "HTTP_CLIENT_IP",
            "HTTP_FORWARDED_FOR",
            "HTTP_FORWARDED",
            "HTTP_VIA",
            "REMOTE_ADDR"};

    /**
     * 从请求头中读取真实代理服务器前客户端ip地址
     *
     * @param request
     * @return
     */
    public static String getProxyRealIp(HttpServletRequest request) {
        String ip = null;
        for (String key : HEADERS_TO_TRY) {
            ip = request.getHeader(key);
            if (ip != null) {
                return ip;
            }
        }
        return ip;
    }
}

 

Published 161 original articles · won praise 39 · views 360 000 +

Guess you like

Origin blog.csdn.net/hknaruto/article/details/98209581