136 votes

Quelle est la différence entre XMLHttpRequest, jQuery.ajax, jQuery.post et jQuery.get ?

Comment puis-je savoir quelle méthode est la meilleure pour une situation donnée ? Quelqu'un peut-il fournir quelques exemples permettant de connaître la différence en termes de fonctionnalité et de performance ?

4 votes

En ce qui concerne les performances (à peine répondu) : selon jsperf en utilisant le XMLHttpRequest ordinaire est beaucoup plus rapide que de passer par jQuery.

0 votes

Y a-t-il des différences subtiles dans la façon dont les cookies sont gérés ? Pour la connexion, je veux utiliser Set-Cookie . Je constate que les cookies fonctionnent avec jQuery.ajax, mais pas lorsque j'utilise XmlHttpRequest avec xhr.withCredentials=true .

0voto

Steve Points 2739

En ce qui concerne les méthodes jQuery, .post y .get tout simplement .ajax En interne, leur but est d'éliminer certaines des options inutiles de l'interface utilisateur. .ajax et fournir des valeurs par défaut appropriées à ce type de demande respectivement.

Je doute qu'il y ait une grande différence de performance entre les trois.

Le site .ajax en elle-même fait une XMLHttpRequest, elle sera fortement optimisée comme le reste de jQuery, mais elle ne sera probablement pas aussi efficace que si vous personnalisiez toute l'interaction vous-même mais c'est la différence entre écrire beaucoup de code ou écrire jQuery.ajax .

0 votes

Y a-t-il un avantage à personnaliser jQuery.ajax ?

0 votes

Je suppose que vous voulez dire par là que vous l'utilisez plutôt que les méthodes abrégées. D'après mon expérience, je trouve que les méthodes abrégées sont utiles si la plupart des valeurs par défaut correspondent à ce que vous voulez, si vous devez être très spécifique sur la façon d'obtenir les données dont vous avez besoin, ajax est généralement la solution.

0 votes

Merci Steve. Je vais utiliser le poste et obtenir. Si vous donnez quelques exemples de .ajax, je peux faire une comparaison.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X