Maison >interface Web >js tutoriel >Comment puis-je envoyer des données POST à ​​l'aide de XMLHttpRequest en JavaScript ?

Comment puis-je envoyer des données POST à ​​l'aide de XMLHttpRequest en JavaScript ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-29 06:26:11606parcourir

How Can I Send POST Data Using XMLHttpRequest in JavaScript?

Envoi de données POST avec XMLHttpRequest

Pour transmettre des données via un XMLHttpRequest en JavaScript, il est essentiel de comprendre le processus. Considérez le formulaire HTML suivant :

<form name="inputform" action="somewhere" method="post">
  <input type="hidden" value="person" name="user">
  <input type="hidden" value="password" name="pwd">
  <input type="hidden" value="place" name="organization">
  <input type="hidden" value="key" name="requiredkey">
</form>

Pour reproduire le comportement de ce formulaire à l'aide d'un XMLHttpRequest en JavaScript, suivez ces étapes :

var http = new XMLHttpRequest();
var url = 'get_data.php';
var params = 'orem=ipsum&name=binny';

http.open('POST', url, true);
http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');

http.onreadystatechange = function() {
    if (http.readyState == 4 && http.status == 200) {
        alert(http.responseText);
    }
}

http.send(params);

Alternativement, si vous disposez d'un objet contenant les données que vous souhaitez envoyer, convertissez-le en paramètres en utilisant le code suivant :

var params = new Object();
params.myparam1 = myval1;
params.myparam2 = myval2;

let urlEncodedData = "", urlEncodedDataPairs = [], name;
for (name in params) {
    urlEncodedDataPairs.push(encodeURIComponent(name) + '=' + encodeURIComponent(params[name]));
}

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