J'ai une grille ExtJS sur une page Web et je voudrais sauvegarder certaines de ses informations d'état sur le serveur lorsque les utilisateurs quittent la page. Puis-je le faire avec une requête Ajax onUnload? Sinon, quelle est la meilleure solution?Comment sauvegarder des informations d'état JavaScript sur mon serveur onUnload?
Répondre
Vous pouvez utiliser une requête Ajax, mais veillez à en faire une requête synchrone plutôt qu'une requête asynchrone. Alternativement, il suffit d'enregistrer l'état chaque fois que l'utilisateur apporte une modification, cela protège également les données si le navigateur de l'utilisateur se bloque.
Vous pouvez également définir un cookie en utilisant javascript lors du déchargement. Je pense que l'avantage d'ajax par rapport aux cookies est que vous avez les données à votre disposition pour les rapports et que l'utilisateur (s'il est connecté) peut utiliser les données sur différentes machines.
L'inconvénient de l'utilisation d'ajax est qu'il peut ralentir la fermeture de la fenêtre du navigateur, ce qui peut être gênant si le serveur tarde à répondre.
Cela dépend de la façon dont l'utilisateur quitte la page. S'il y a un bouton 'se déconnecter' dans votre interface graphique, vous pouvez déclencher une requête ajax lorsque l'utilisateur clique sur ce bouton. Sinon, je ne pense pas que ce soit une bonne idée de faire une requête dans onUnload. Comme indiqué précédemment, vous devrez faire une demande synchrone ... Une alternative à la solution cookie serait un champ de texte caché. C'est une technique habituellement utilisée par des outils tels que RSH qui traitent des problèmes d'histoire qui viennent avec ajax.
Il ya une réponse ci-dessus qui dit d'utiliser un appel ajax synchrone, et c'est le meilleur des cas. Le problème est que le déchargement ne fonctionne pas partout. Si vous regardez here, vous trouverez quelques astuces pour vous aider à télécharger des événements en safari ... Vous pouvez également utiliser Google Gears pour enregistrer le contenu côté utilisateur pour les situations où l'utilisateur reviendra, mais la seule façon de garder en toute sécurité cette information est de l'envoyer en continu tant que l'utilisateur est sur la page ou apporter des modifications.
- 1. Problème avec Javascript onUnload méthode
- 2. Sauvegarder des informations dans le modèle "sub" dans CakePHP
- 3. comment obtenir l'événement onunload sur IE
- 4. ie enregistrer save onunload
- 5. des informations sur UML?
- 6. Serveur demandant au client des informations?
- 7. Comment créer un travail Cron pour sauvegarder la sauvegarde MySQL et FTP sur mon serveur de sauvegarde?
- 8. problème en JavaScript récupérer des informations
- 9. Informations sur l'utilisation des marges
- 10. Comment dois-je sauvegarder mes images dans mon projet?
- 11. Rails image_tag recherche des actifs sur mon serveur de production!
- 12. Comment sauvegarder mon contenu XAML dans un fichier?
- 13. Comment connecter mon application asp.net sur mon serveur Web à une base de données SQL sur un autre serveur?
- 14. des informations sur le glisser & déposer!
- 15. Nouveau sur les applets et les serveurs. Façons de stocker des informations sur le côté serveur?
- 16. Comment obtenir des informations sur photo sur flickr?
- 17. Comment sauvegarder des procédures stockées dans MySQL
- 18. comment exécuter mon application Web sur le serveur ASP.NET
- 19. Comment sauvegarder et restaurer une base de données en tant que copie sur le même serveur?
- 20. Obtenir des informations sur Wikipedia - comment obtenir un formulaire HTML?
- 21. ASP.NET MVC sauvegarder l'état des données sur le lien ajax
- 22. Comment récupérer des informations sur Facebook à l'aide de fqlquery?
- 23. Comment présenter des informations formatées sur un formulaire .Net?
- 24. Comment obtenir des informations sur la classe et l'exécution?
- 25. Comment obtenir des informations en cliquant sur un lien?
- 26. Comment utiliser JQuery pour obtenir des informations sur certains tags?
- 27. MySQL: Comment stocker/récupérer des informations sur un artiste?
- 28. PowerShell: comment obtenir des informations détaillées sur un événement WMI?
- 29. Récupération des informations sur une image
- 30. OpenID - obtenir des informations sur l'utilisateur?