2010-07-26 5 views
2

J'utilise TCP keepalive côté serveur pour maintenir la connexion active et avertir le serveur si le client meurt. Comment puis-je configurer jQuery.get() pour déconnecter la connexion après une certaine période d'inactivité? Editer - Je voudrais considérer le "temps mort" comme l'heure à laquelle aucun paquet TCP n'est échangé. Étant donné que le Serveur a TCP keepalive, il envoie constamment des paquets de données 0 au client.Déconnecter une connexion jquery après une période d'inactivité

@ La réponse de J-P ne correspond pas exactement à ce que je veux. Si la connexion est ouverte, a un trafic persistant mais pas de données, je voudrais le garder ouvert indéfiniment.

+0

Je ne sais pas, si cela peut être contrôlé par JavaScript. S'il n'y a plus de demandes, je pense que le navigateur est libre de mettre fin à la connexion. Et c'est tout ce que vous pouvez faire avec un XmlHttpRequest: Ouvrir ou fermer des connexions. – Boldewyn

+0

Il y a une demande sortante ouverte sur la connexion. – ripper234

Répondre

1

Utilisez l'option timeout:

jQuery.ajax({ 
    url: '...', 
    timeout: 3000, 
    success: function(){ /*...*/ } 
}); 

Ou, si vous voulez que le même délai d'attente pour toutes les demandes:

$.ajaxSetup({ 
    timeout: 3000 
}); 
+0

Pas exactement ce que je suis après (voir question éditée). – ripper234

Questions connexes