JavaFX WebView vous permet de définir une chaîne d'agent utilisateur à l'aide de user agent property sur WebEngine. Vous pouvez l'utiliser pour définir l'agent utilisateur sur tout ce que vous souhaitez. Ensuite, lorsque le client WebView demande une page Web, il fournit cette valeur dans l'en-tête de l'agent utilisateur. Votre code serveur peut interroger l'en-tête de l'agent utilisateur, puis prendre les mesures qu'il juge nécessaires en fonction du résultat.
De this answer, la sortie par défaut pour la chaîne de l'agent utilisateur est:
User Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.44 (KHTML, like Gecko) JavaFX/8.0 Safari/537.44
Comme il est indiqué dans la documentation WebEngine, cette valeur peut changer entre les versions JavaFX et systèmes d'exploitation. Très probablement, la valeur par défaut inclura toujours le texte JavaFX
, donc vous pouvez simplement vérifier sur le serveur si la chaîne de l'agent utilisateur contient le texte JavaFX
. Sinon, si vous voulez être sur-assuré, vous pouvez coder votre client JavaFX pour définir explicitement la chaîne de l'agent utilisateur sur une valeur que vous vérifiez sur votre serveur.
Pour voir comment vérifier un agent utilisateur dans un JSP, reportez-vous à:
qui indiquerait que vous écrire quelque chose comme ceci:
<c:if test="${fn:contains(header['User-Agent'],'JavaFX')}"></c:if>