WEBSERVICES + AJAX = UNE BONNE MÉTHODE POUR BANIR L'AUTOPOSTBACK ET AUGMENTER LA
billou_13
Messages postés860Date d'inscriptionjeudi 4 mars 2004StatutMembreDernière intervention19 août 2014
-
23 avril 2009 à 13:54
cs_driver
Messages postés7Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention 7 janvier 2011
-
11 sept. 2009 à 18:36
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_driver
Messages postés7Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention 7 janvier 201155 11 sept. 2009 à 18:36
Merci Billou13 pour ta contribution critique, je te rejoint tout à fait, je n'est plus aucun commentaire à ajouter aprés une longue journée de travail. Bon week end à vous tous
billou_13
Messages postés860Date d'inscriptionjeudi 4 mars 2004StatutMembreDernière intervention19 août 201429 11 sept. 2009 à 11:34
@LASSAAD83:
En effet, il est vrai que l'UpdatePanel comble le même besoin. Plus facile à coder, peut-être; mais permet-il d'augmenter la performance de la page ???
Je n'en suis pas si sûr...
Un simple test de cette source et d'une source équivalente avec l'UpdatePanel te permettra de remarquer que le flux réseau (avec firebug sous firefox) de rafraichissement de ta page est largement plus conséquent avec un UpdatePanel. En effet, ce dernier emporte énormément d'information avec lui qui ne sont pas toutes pertinentes.
Et je dirai même plus, si tu fais un test avec un simple postback (sans UpdatePanel) de ta page te montrera que tu n'es pas loin du flux de l'UpdatePanel.
Voici quelques liens:
- http://encosia.com/2007/07/11/why-aspnet-ajax-updatepanels-are-dangerous/ - http://msdn.microsoft.com/fr-fr/magazine/cc163413.aspx
C'est pourquoi je pense que la solution proposée par Driver fait partie des bonnes pratiques que j'essaie toujours de mettre en place dans mes projets.
Donc, OUI, je vote pour cette solution plutôt que pour un UpdatePanel (qui n'a pas de raison d'être pour ma part)...
lassaad83
Messages postés148Date d'inscriptionvendredi 28 avril 2006StatutMembreDernière intervention 1 décembre 2009 11 sept. 2009 à 11:18
UpdatePanel ça te dit quelque chose ?
cs_ClaudePelletier
Messages postés3Date d'inscriptionvendredi 10 juillet 2009StatutMembreDernière intervention 4 août 2009 15 juil. 2009 à 04:49
Cher Driver,
Je ne puis que te donner raison. ;-)
cs_driver
Messages postés7Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention 7 janvier 201155 14 juil. 2009 à 01:00
t'as pas tord Claude Pelletier,
mais chaque méthode dispose d'un périmètre d'utilisation, il faut juste bien définir les priorité de chaque application et les besoins de chaque client...chaque application devient unique et c'est pour ça qu'on dispose toujours de boulo dans notre domaine et heureusement d'ailleurs :)
cs_ClaudePelletier
Messages postés3Date d'inscriptionvendredi 10 juillet 2009StatutMembreDernière intervention 4 août 2009 10 juil. 2009 à 21:30
Le PostBack de la première liste déroulante s'effectue quand même. En fait, au lieu de laisser le PostBack être géré par .NET (plus sécuritaire, stable et fiable), tu as créé ta propre fonction JavaScript (GetDDL2ObjectsServiceJS) qui appelle ton service Web.
Bref, ce que tu gagnes en performance, tu le perds probablement 10 fois en sécurité, en stabilité et en fiabilité. Ce code ne résisterait pas à un audit en sécurité applicative (il est facilement injectable). C'est une belle démonstration, mais il serait téméraire d'utiliser ce petit «truc» (déjà passablement connu) dans le cadre du développement d'un site transactionnel par exemple.
cs_driver
Messages postés7Date d'inscriptionjeudi 3 avril 2003StatutMembreDernière intervention 7 janvier 201155 23 avril 2009 à 14:43
De rien, c'est un très grand soulagement pour moi de pouvoir partager ce source avec la communauté Microsoft parce que j'ai passé beaucoup d'heures avant de pouvoir arriver à concevoir cette solution. Maintenant je sais que d'autres personne vont attrapé le HAPPY-CODING en découvrant rapidement cette solution.
Et merci pour le source en 3.5. Il me seras utile quand j'aurai à bosser sur ce framework. En ce moment je travaille sur la performance d'un site ASP.NET 2.0
billou_13
Messages postés860Date d'inscriptionjeudi 4 mars 2004StatutMembreDernière intervention19 août 201429 23 avril 2009 à 13:54
Merci !
Source très intéressante d'utilisation de Web Services en javascript. A user et abuser dans les développements asp.net ^^
11 sept. 2009 à 18:36
11 sept. 2009 à 11:34
En effet, il est vrai que l'UpdatePanel comble le même besoin. Plus facile à coder, peut-être; mais permet-il d'augmenter la performance de la page ???
Je n'en suis pas si sûr...
Un simple test de cette source et d'une source équivalente avec l'UpdatePanel te permettra de remarquer que le flux réseau (avec firebug sous firefox) de rafraichissement de ta page est largement plus conséquent avec un UpdatePanel. En effet, ce dernier emporte énormément d'information avec lui qui ne sont pas toutes pertinentes.
Et je dirai même plus, si tu fais un test avec un simple postback (sans UpdatePanel) de ta page te montrera que tu n'es pas loin du flux de l'UpdatePanel.
Voici quelques liens:
- http://encosia.com/2007/07/11/why-aspnet-ajax-updatepanels-are-dangerous/
- http://msdn.microsoft.com/fr-fr/magazine/cc163413.aspx
C'est pourquoi je pense que la solution proposée par Driver fait partie des bonnes pratiques que j'essaie toujours de mettre en place dans mes projets.
Donc, OUI, je vote pour cette solution plutôt que pour un UpdatePanel (qui n'a pas de raison d'être pour ma part)...
11 sept. 2009 à 11:18
15 juil. 2009 à 04:49
Je ne puis que te donner raison. ;-)
14 juil. 2009 à 01:00
mais chaque méthode dispose d'un périmètre d'utilisation, il faut juste bien définir les priorité de chaque application et les besoins de chaque client...chaque application devient unique et c'est pour ça qu'on dispose toujours de boulo dans notre domaine et heureusement d'ailleurs :)
10 juil. 2009 à 21:30
Bref, ce que tu gagnes en performance, tu le perds probablement 10 fois en sécurité, en stabilité et en fiabilité. Ce code ne résisterait pas à un audit en sécurité applicative (il est facilement injectable). C'est une belle démonstration, mais il serait téméraire d'utiliser ce petit «truc» (déjà passablement connu) dans le cadre du développement d'un site transactionnel par exemple.
23 avril 2009 à 14:43
Et merci pour le source en 3.5. Il me seras utile quand j'aurai à bosser sur ce framework. En ce moment je travaille sur la performance d'un site ASP.NET 2.0
23 avril 2009 à 13:54
Source très intéressante d'utilisation de Web Services en javascript. A user et abuser dans les développements asp.net ^^
Pour information, un tel type de besoin peut aussi conclure à une implémentation via la mise en place d'un service "AJAX-enabled WCF Services" (Framework 3.5). La technique est quasi identique.
Un très bon tutorial: http://www.pluralsight.com/community/blogs/fritz/archive/2008/01/31/50121.aspx