Netty Canal fermé de détection
Je suis en place un serveur d'application client à l'aide de netty et ios, je suis confronté à un problème lorsque l'utilisateur désactive le WiFi sur son appareil ios, le netty serveur ne sais pas à ce sujet.
Le serveur a besoin de savoir pour faire le nettoyage de l'utilisateur et de définir lui en mode hors connexion, mais maintenant, lorsque l'utilisateur essaie de se connecter à nouveau, le serveur lui dit qu'il/elle est déjà en ligne.
OriginalL'auteur Khaled Abu AlKheir | 2012-01-09
Vous devez vous connecter pour publier un commentaire.
Si j'ai bien compris votre problème correctement: Vous souhaitez écouter client canal fermé événements côté serveur et faire un peu de nettoyage de session,
Il y a deux façons d'écouter du canal fermé événements dans Netty :
1) Si votre serveur gestionnaire s'étend
SimpleChannelHandler/SimpleChannelHandler
, alors vous pouvez ignorer suivant la méthode et de l'écriture de votre session de nettoyage de la logique2) Si vous avez seulement un accès au canal de référence, alors vous pouvez obtenir le canal proche avenir et enregistrer votre mise en œuvre de
ChannelFutureListener
avec votre session de nettoyage de la logique,alors préférable d'ajouter un IdleStateHandler avec une lecture optimale du délai d'inactivité. Si l'utilisateur est inactif de plus de temps, plus probablement, il pourrait être de connexion perdue cas, afin de fermer la connexion sur IdleStateEvent à partir de votre serveur de gestionnaire.
Dans les versions plus récentes de Netty,
getCloseFuture()
semble êtrecloseFuture()
OriginalL'auteur Jestan Nirojan
Utilisation IdleStateHandler
Vous pouvez détecter lorsqu'il n'y a pas de demande/réponses dans des intervalles de temps.
OriginalL'auteur jacktrades
Vérifier l'id de session et permettre la renégociation. Ou vous pouvez utiliser quelque chose comme le cookie contrôleur.
Puis-je poser des question hors sujet: Comment votre client sur ios interagir avec netty serveur? (quel est le cadre que vous utilisez sur côté client, et ce décodeur/encodeur utiliser? )
OriginalL'auteur ikosdroid