Les navigateurs ont-ils des délais d'expiration intégrés et si oui, quels sont-ils?
J'ai une page qui fait un appel AJAX sur un processus qui prend au plus 5 minutes à exécuter. Quelqu'un a dit que les navigateurs avaient dépassé le délai d'attente après 2 minutes mais ne savait pas s'il y avait une vérité à cela.
Cela dépend du navigateur. "Par défaut, Internet Explorer a une valeur KeepAliveTimeout d'une minute et un facteur de limitation supplémentaire (ServerInfoTimeout) de deux minutes. Chaque paramètre peut entraîner la réinitialisation du socket par Internet Explorer." - depuis IE support http://support.Microsoft.com/kb/813827
Firefox a également la même valeur, je pense.
Généralement, le délai d'expiration du serveur est inférieur à celui du navigateur, mais vous pouvez au moins contrôler cela et le définir plus haut.
Vous préférez cependant gérer le délai d'attente, de cette façon, vous pouvez agir sur un tel événement. Voir ce fil: Comment détecter le timeout sur un appel AJAX (XmlHttpRequest) dans le navigateur?
Vous pouvez voir la valeur par défaut dans Chrome dans ce lien
int64_t g_used_idle_socket_timeout_s = 300 // 5 minutes
Dans Chrome, pour autant que je sache, il n'y a pas de moyen facile (comme Firefox) de modifier la valeur du délai d'expiration.