Sur mon site Web, j'ai une seule page qui se met à jour de manière dynamique via AJAX/JSON dans une page HTML simple.
Maintenant, cette page peut être laissée ouverte pendant trois ou quatre jours. Lorsque je l'ai laissé en marche pendant le week-end, les données étaient gelées, le serveur fonctionnait toujours parfaitement et, après un rafraîchissement, tout a recommencé. Ma question est donc Internet Explorer (ou même d'autres navigateurs) "expire-t-il"?
Beaucoup de questions viennent à la mienne:
Généralement, si vous avez un morceau de code JavaScript qui est exécuté sur une minuterie avec setTimeout
, il sera exécuté indéfiniment. Mais rappelez-vous que les navigateurs sont des logiciels de bureau et que, de ce fait, il arrive parfois que des problèmes surviennent sur le système, ce qui peut avoir une incidence sur ce navigateur. Il est difficile de spéculer sans savoir plus précisément quelles étaient les conditions de votre expérience. Il est possible que le navigateur se soit figé à cause d'un autre logiciel système en cours d'exécution. Il est possible que le DNS du système soit devenu kerflooie pendant un moment, puis le JavaScript ne gérait pas bien ce problème. Il est possible que le serveur qui traite le contenu récupéré pendant une seconde et renvoie une chaîne incorrecte que votre JavaScript ne puisse pas gérer, puis l'exécution de la page est arrêtée. Enfin, le navigateur a peut-être manqué de mémoire de manière transitoire. Si les données renvoyées ajoutaient également du contenu ajoutant des événements à la page, vous avez peut-être simplement manqué de mémoire? Ce serait le cas si la page "gelait vraiment" - mais vous auriez probablement vu une alerte mémoire de IE dans ce cas.
Beaucoup de tenants et aboutissants pour cette question, et pas assez de détails fournis.
Je ne m'attendrais pas à ce que IE expire, mais si une demande ajax a échoué, il ne peut pas essayer de réessayer. Un bon moyen de vous en assurer serait d'utiliser Firefox et de télécharger un plug-in appelé FireBug. Cela vous donnera un journal de toutes les demandes http/ajax qui sont demandées à partir du bureau et vous montrera s'il a reçu des états d'erreur du serveur ou une erreur javascript.