Maison >interface Web >js tutoriel >Quels problèmes rencontrerez-vous lors de l'utilisation de get et post dans Ajax et comment les résoudre

Quels problèmes rencontrerez-vous lors de l'utilisation de get et post dans Ajax et comment les résoudre

php中世界最好的语言
php中世界最好的语言original
2018-04-04 11:31:251739parcourir

Cette fois, je vais vous présenter les problèmes que vous rencontrerez lors de l'utilisation de get et post en Ajax et comment les gérer. Quelles sont les précautions lors de l'utilisation de get et post en Ajax. Voici des cas pratiques. , un Levez-vous et jetez un œil.

Problèmes rencontrés lors de l'utilisation de get :

1. Problème 1. Mise en cache : Lorsque l'URL est la même à chaque accès, le le client le lit directement Récupérez le contenu dans le cache local, même si les données d'arrière-plan changent, le premier plan ne changera pas

Solution : dans ? Liez ensuite un num=[random number Math.random()] ou num=[Timestampnew Date().getTime()], '1.php?username="May"&'+num ( Il n'y a pas de nom de variable ici pour éviter les conflits avec les paramètres d'arrière-plan)

2. Problème 2. Caractères tronqués Lorsque des caractères chinois ou des caractères spéciaux sont transmis, des caractères tronqués apparaissent. dans l'affichage frontal

Solution : utilisez encodeURI('snail')

Résultats des tests : en utilisant Chrome pour tester, les deux problèmes d'obtention des résultats ont été résolus

Problèmes rencontrés lors de l'utilisation de post :

Méthode Post, les données sont passées dans send() en paramètre

Problème : Lorsqu'aucune requête n'est définie ; en-tête, l'arrière-plan ne traite pas les données directement ; la réception ne peut pas obtenir les données renvoyées par l'arrière-plan

Solution : définir manuellement l'en-tête de la requête (xhr.setRequestHeader('content-type','application/x -www-form-urlencoded')), déclarer le type de données envoyé

[Remarque] Il n'y a pas de problème de mise en cache dans la publication, et il n'y a pas de problème d'encodage (car il a été déclaré dans l'en-tête de la requête)

Résultats des tests : Testé avec Chrome, le résultat est que la publication ne déclare pas les informations d'en-tête, et le problème existe

En termes simples : Get request et Post request La différence

1 Lors de l'utilisation de Get request, les paramètres sont affichés dans l'URL, mais lors de l'utilisation de la méthode Post, ils ne le seront pas. affiché.

2. Utilisez la requête Get pour envoyer des données Le montant est faible, mais la requête Post envoie une grande quantité de données

Je pense que vous maîtrisez la méthode après avoir lu le cas ici. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de PHP !

Lecture recommandée :

Comment Ajax réalise-t-il l'encapsulation des requêtes réseau

Comment Ajax réalise-t-il la liste de chargement des données sans se déconnecter lorsque en cliquant

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn