2012-09-19 6 views
4

Je faisais une recherche sur la façon de faire des requêtes POST en utilisant le étonnamment puissant D3 (que je peux entièrement recommander complètement pour la visualisation de données) et trouvé le xhr2 branch où les auteurs de D3 travaillent actuellement sur xhr Support POST (et autres types de requêtes).XHR/Post demande en utilisant D3

On dirait que c'est une toute nouvelle fonctionnalité car la requête de fusion est d'hier (18 septembre 2012) :) Et curieux je suis déjà je voulais l'essayer, en utilisant la séquence de code suivante (que j'ai de cette location)

d3.text("localhost/test",function(d) { console.log(d)}) 
     .method("POST") 
     .setRequestHeader("Content-type", "application/x-www-form-urlencoded") 
     .data("a=1&b=2&c=3"); 

Malheureusement, le message d'erreur suivant s'affiche.

TypeError: 'undefined' is not a function (evaluating 'd3.text("localhost/test",function(d) { console.log(d)}) .method("POST")')

J'utilise la minified D3 version de la branche xhr2. Quelqu'un a une idée de quoi changer?

Répondre

10

L'API est encore en cours de développement. Si vous voulez l'essayer, l'API actuelle est comme ceci:

d3.text("/test") 
    .header("Content-type", "application/x-www-form-urlencoded") 
    .post("a=1&b=2&c=3", function(error, text) { console.log(text); }); 

Vous pouvez également utiliser d3.xhr plutôt que d3.text directement si vous souhaitez que l'objet de la demande complète plutôt que le responseText.

Édition: Mise à jour vers la dernière API.

+0

Fonctionne comme un charme. Merci beaucoup! Je garderai un oeil sur les dev/docs pour être informé des changements possibles de l'API. –

Questions connexes