Heim  >  Artikel  >  Java  >  So erhalten Sie eine IP-Adresse in Java

So erhalten Sie eine IP-Adresse in Java

尚
Original
2019-12-27 14:27:117209Durchsuche

So erhalten Sie eine IP-Adresse in Java

Java-Methode zum Abrufen der IP-Adresse:

/**
     * 通过HttpServletRequest返回IP地址
     *
     * @param request HttpServletRequest
     * @return ip String
     * @throws Exception
     */
    private static String getIpAddr(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.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 (LOCAL_IP.equals(ip) || LOCAL_IP1.equals(ip)) {
                InetAddress inet = null;
                try {
                    inet = InetAddress.getLocalHost();
                    ip = inet.getHostAddress();
                } catch (UnknownHostException e) {
                    e.printStackTrace();
                }
            }
        }
        return ip;
    }

Das HttpServletRequest-Objekt stellt die Anfrage des Clients dar, wenn der Client über das HTTP-Protokoll auf den Server zugreift Alle Anforderungsheader sind in diesem Objekt gekapselt. Über die von diesem Objekt bereitgestellten Methoden können alle vom Client angeforderten Informationen abgerufen werden.

Gemeinsame Methoden:

Die getRequestURL-Methode gibt die vollständige URL zurück, wenn der Client eine Anfrage stellt.

Die getRequestURI-Methode gibt den Ressourcennamenteil der Anforderungszeile zurück.

Die getQueryString-Methode gibt den Parameterteil der Anforderungszeile zurück.

Die getPathInfo-Methode gibt zusätzliche Pfadinformationen in der Anforderungs-URL zurück. Die zusätzlichen Pfadinformationen sind der Inhalt in der Anforderungs-URL nach dem Servlet-Pfad und vor den Abfrageparametern, der mit „/“ beginnt.

Die getRemoteAddr-Methode gibt die IP-Adresse des Clients zurück, der die Anfrage gestellt hat.

Die getRemoteHost-Methode gibt den vollständigen Hostnamen des Clients zurück, der die Anfrage stellt.

Die getRemotePort-Methode gibt die vom Client verwendete Netzwerk-Portnummer zurück.

Die getLocalAddr-Methode gibt die IP-Adresse des WEB-Servers zurück.

Die getLocalName-Methode gibt den Hostnamen des WEB-Servers zurück.

Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial.

Das obige ist der detaillierte Inhalt vonSo erhalten Sie eine IP-Adresse in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn