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

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

DDD
Libérer: 2024-12-22 04:53:13
original
883 Les gens l'ont consulté

How to Send POST Data Using XMLHttpRequest in JavaScript?

Envoi de données POST via XMLHttpRequest en JavaScript

En JavaScript, XMLHttpRequest fournit une méthode simple pour envoyer des requêtes HTTP à un serveur, y compris des requêtes POST contenant des données de requête. Voyons comment envoyer des données équivalentes à un formulaire à l'aide de XMLHttpRequest.

Supposons que vous disposiez d'un formulaire HTML avec les entrées masquées suivantes :

<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>
Copier après la connexion

Pour répliquer les données de ce formulaire à l'aide de XMLHttpRequest, vous pouvez utilisez l'extrait de code JavaScript suivant :

var http = new XMLHttpRequest();
var url = 'get_data.php';
var params = 'user=person&pwd=password&organization=place&requiredkey=key';
http.open('POST', url, true);

// Send appropriate header information
http.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');

http.onreadystatechange = function() {
    if(http.readyState == 4 && http.status == 200) {
        console.log(http.responseText);
    }
}
http.send(params);
Copier après la connexion

Dans le code ci-dessus, la variable 'params' contient les données à soumettre sous forme de paires clé/valeur codées en URL. Si vous souhaitez créer des paramètres dynamiques à partir d'un objet, considérez le code suivant :

var params = new Object();
params.user = 'person';
params.pwd = 'password';
params.organization = 'place';
params.requiredkey = 'key';

// Encode the object into URL-encoded key/value pairs
let urlEncodedDataPairs = [], name;
for( name in params ) {
 urlEncodedDataPairs.push(encodeURIComponent(name) + '=' + encodeURIComponent(params[name]));
}

var params = urlEncodedDataPairs.join('&');
Copier après la connexion

Cette variable 'params' révisée peut ensuite être utilisée dans la requête XMLHttpRequest comme décrit précédemment.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal