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!