L'obtention de l'adresse IP du client dans la page Jsp
Je veux extraire l'adresse Ip du client dans ma page jsp et que vous souhaitez stocker sur ma Base de données.
Je suis à l'aide de code suivant dans la page Jsp à fech adresse Ip, mais il montre les serveurs de l'adresse Ip.
<input type="hidden" name="ipaddress" value="<%=request.getRemoteAddr()%>"/>
- est votre client et le serveur sont sur la même machine ?
- Sur l'autre Machine
- Cochez cette question: l'Adresse IP Externe du client
- Pourquoi voulez-vous d'obtenir l'adresse du client?
Vous devez vous connecter pour publier un commentaire.
Dans le cas d'habitude la méthode
ServletRequest.getRemoteAddr()
(ougetRemoteHost()
etgetRemotePort()
) devrait renvoie des informations du client réel.Mais, si son acheminé à travers un proxy, ou un différent moteur de servlet-vous aussi sur les ip de ces machines. Pour lutter contre ces situations, vous pourriez essayer ci-dessous les opérations de
Mais cela pourrait retourner la valeur null si la demande est directement à partir du client. Vous pouvez gérer la situation avec quelques conditions supplémentaires pour obtenir des données valides.
Essayer d'obtenir l'adresse IP du client côté serveur avec le
request
objet n'est jamais une méthode fiable.Les plus fiables ont tendance à obtenir exécuté sur le côté client, avec les ActiveX, les Applets ou Javascript pour n'en nommer que quelques-uns. Toutefois, cela pose également des défis. Cochez les réponses à cette question seulement si vous savez ce que vous êtes contre (C'est ma préférée pour la réponse)