par anonyme 05-Avril-2021

Comment faire une requête Ajax avec la méthode Post sans utiliser jQuery ?

1 Réponse

par Ted 05-Avril-2021

Pour effectuer un appel Ajax, avec la méthode Post, sans jQuery, vous devez utiliser les objets XMLHttpRequest.

Lors de l'envoi d'une requête Ajax avec la méthode Post, vous devez définir manuellement le type de contenu dans les en-têtes de la requête :

application/x-www-form-urlencoded 

x-www-form-urlencoded permet d'envoyer les données sous la forme de paramètres d'URL.

Voici un exemple d'appel Ajax, sans jQuery, avec la méthode Post et l'objet XMLHttpRequest :

<script>
var ajax = new XMLHttpRequest();
ajax.onreadystatechange = function () {
    if (this.readyState == 4) {
        alert('Réponse de la requête AJAX : ' + this.response);
    }
};
ajax.open('POST', 'ajax.php', true);
ajax.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
ajax.send('pass=1formatik');
</script>

Remarque : Pour envoyer plusieurs Post, utilisez le caractère & comme séparateur.

http.send('pass=1formatik&nom=ted');

Voici le contenu du fichier ajax.php ; il vérifie que la valeur du Post nommé pass est bien égale à 1formatik :

<?php
if ((isset($_POST['pass'])) && ($_POST['pass'] == '1formatik')) {
echo "mot de passe correct";
}
else echo "mot de passe faux";
?>

Remarque : Vous trouverez la signification des valeurs d'état readyState via cette page du site de Mozilla.

Questions liées

2 réponses
posée par anonyme 12-Octobre-2017
1 réponse
posée par Martin JS 17-Février-2023
1 réponse
1 réponse
1 réponse
1 réponse
posée par anonyme 20-Mars-2020
1 réponse
posée par anonyme 24-Juin-2018
Bienvenue sur 1FORMATIK, où vous pouvez poser des questions en lien avec l'informatique et internet, et recevoir des réponses d'Antoine et d'autres internautes.

2.6k questions

3k réponses

...