Obtenez nom de l'ordinateur client dans l'application web
J'ai une application web Java qui a besoin de connaître le nom de l'ordinateur des clients à se connecter à elle. Ma première idée était d'obtenir via JavaScript et de remplir un champ de formulaire masqué avec elle, mais après quelques recherches, il semble JS ne peut pas accéder à cette information.
Puis j'ai essayé à l'aide d'une applet et l'accès à l'applet méthodes via JavaScript. Cela semble fonctionner sur Firefox, mais les nouvelles versions de Chrome de ne pas exécuter les applets.
Puis j'ai envisagé de passer à un Java Webstart application, qui, autant que je sache, devrait fonctionner sous Chrome, mais dans ce scénario, depuis le Webstart application s'exécute en dehors du navigateur,JavaScript ne peut pas accéder à ses méthodes.
Ensuite, j'ai essayé d'enregistrer le nom d'hôte dans l'environnement dans le répertoire TEMP, qui fonctionne dans Firefox + Linux + Java7, mais pas dans Firefox + Windows + Java8: l'applet ne fonctionne tout simplement pas, et, en plus, je n'ai pas trouvé un moyen d'accéder à la définition répertoire TEMP et lire le fichier en JavaScript.
À ce point, je suis d'idées et aimerais avoir des commentaires de vous les gars. Tous les conseils sur la façon de réaliser cet objectif? Ai-je raté un solution évidente?
Remarquez s'il vous plaît j'ai besoin de l'ordinateur définit le nom d'hôte, pas ce que l'IP de l'ordinateur résout via DNS.
Grâce.
Vous devez vous connecter pour publier un commentaire.
Votre Javawebstartet Application pourrait Héberger Websocket auditeur. Donc, vous pouvez accéder à cette application via Websocket à partir de javascript. Fonctionne uniquement avec le protocole http et non https
Sur JavaSide utiliser le websocket mise en œuvre de http://java-websocket.org/
En Javascript j'utilise https://code.google.com/p/jquery-websocket/
Vous pouvez trouver des exemples il y en trop.
Le websocket la communication est asynchrone. Créer le WS avec la méthode de rappel pour la réponse
et appelle le serveur avec
Vous ne pouvez pas obtenir le nom de l'ordinateur à l'aide de javascript. Le Javascript n'ont pas accès à la nom de l'ordinateur comme une des raisons de sécurité
si vous avez l'add ip vous pouvez:
Essayé de servlet?
Vous pouvez utiliser
InetAddress.getLocalHost().getHostName()
qui ne permet pas de résoudre le nom d'hôte DNS en fonction de la documentation