Maison > interface Web > js tutoriel > Comment publier des données codées en URL dans AngularJS sans jQuery ?

Comment publier des données codées en URL dans AngularJS sans jQuery ?

DDD
Libérer: 2024-12-04 03:20:11
original
141 Les gens l'ont consulté

How to POST URL-Encoded Data in AngularJS without jQuery?

POSTing de données codées en URL avec $http sans jQuery

En tant que débutant dans AngularJS, vous cherchez un moyen de faire des requêtes AJAX sans en s'appuyant sur jQuery. Bien que votre approche initiale avec $.param ait fonctionné, vous aimeriez éliminer la dépendance à jQuery.

Vos tentatives ultérieures avec les données et les paramètres n'ont pas donné les résultats souhaités, et la stringification JSON s'est également avérée infructueuse. AngularJS propose certainement une méthode pour cela, alors explorons la solution.

Transformation des données pour les paramètres d'URL

La clé pour envoyer des données de formulaire via POST est de transformer votre objet données dans les paramètres d’URL. AngularJS fournit une fonction transformRequest qui vous permet de personnaliser le corps de la requête avant de l'envoyer.

Exemple de demande de publication avec transformation

$http({
    method: 'POST',
    url: url,
    headers: {'Content-Type': 'application/x-www-form-urlencoded'},
    transformRequest: function(obj) {
        var str = [];
        for(var p in obj)
        str.push(encodeURIComponent(p) + "=&" + encodeURIComponent(obj[p]));
        return str.join("&");
    },
    data: {username: $scope.userName, password: $scope.password}
}).then(function () {});
Copier après la connexion

Dans cet exemple :

  • La fonction transformRequest parcourt l'objet fourni, codant chaque clé et valeur.
  • Les paires clé-valeur codées sont ensuite jointes en une seule chaîne séparée par des esperluettes (&).

AngularJS 1.4 et au-delà

Avec AngularJS 1.4 et versions ultérieures, de nouveaux services ont été introduits pour simplifier davantage ce processus. Cependant, l'approche ci-dessus reste une solution valable pour les versions antérieures.

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