jsf 정보 사용자 IP 주소 찾기



proxy-client-ip (2)

이 시도...

HttpServletRequest httpServletRequest = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();  
String ip = httpServletRequest.getRemoteAddr();  

https://src-bin.com

JSF 2.0을 사용하여 웹 애플리케이션을 만들었습니다. 나는 호스팅 사이트에서 호스팅하고 호스팅 사이트의 서버는 미국에 기반을두고 있습니다.

내 고객은 모두 사이트에 액세스 한 사용자의 세부 정보를 원합니다. JSF에서 사용자의 IP 주소는 어떻게 찾을 수 있습니까?

나는 함께 노력했다.

    try {
        InetAddress thisIp = InetAddress.getLocalHost();
        System.out.println("My IP is  " + thisIp.getLocalHost().getHostAddress());
    } catch (Exception e) {
        System.out.println("exception in up addresss");
    }

그러나 이것은 내 사이트의 IP 주소 즉 서버 IP 주소만을 제공합니다.

누군가가 Java를 사용하여 웹 사이트에 접속 한 IP 주소를 얻는 방법을 알려 줄 수 있습니까?


Answer #1

나는 계속 나아 갔다.

HttpServletRequest request = (HttpServletRequest) FacesContext.getCurrentInstance().getExternalContext().getRequest();
String ipAddress = request.getHeader("X-FORWARDED-FOR");
if (ipAddress == null) {
    ipAddress = request.getRemoteAddr();
}
System.out.println("ipAddress:" + ipAddress);




ip-address