Maison >interface Web >js tutoriel >Comment envoyer des données de formulaire avec l'API Fetch à l'aide de « application/x-www-form-urlencoded » ?
La pose de données de formulaire avec l'API Fetch utilise
FormData, qui utilise intrinsèquement le format multipart/form-data. Si vous cherchez à envoyer des données en utilisant "Content-Type": "application/x-www-form-urlencoded", il existe deux options :
Créer un corps encodé en URL :
<code class="js">fetch("api/xxx", { body: "[email protected]&password=pw", headers: { "Content-Type": "application/x-www-form-urlencoded" }, method: "post" })</code>
Utilisation d'URLSearchParams :
Pour construire un objet URLSearchParams à partir d'un élément de formulaire, vous pouvez parcourir les éléments ou utiliser la méthode de conversion suivante :
<code class="js">const data = new URLSearchParams(new FormData(formElement)); fetch("api/xxx", { method: 'post', body: data, })</code>
Notez que définir un en-tête Content-Type n'est pas nécessaire lors de l'utilisation d'URLSearchParams.
Décodage de Multipart/Form-Data dans le contrôleur :
En fonction de votre implémentation backend, vous devrez peut-être décoder le corps multipart/form-data. Reportez-vous à la documentation du framework souhaité pour les procédures de décodage spécifiques.
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!