2010-09-11 2 views
5

J'accède une certaine API de service Web qui nécessite des données XML dans la demande. Par exemple, l'API peut être attendre:moyen le plus rapide de construire une requête XML avec jQuery

<?xml version="1.0" encoding="utf-8" ?> 

<root> 
    <a>1</a> 
    <b>2</b> 
</root> 

Quelle est la meilleure façon de construire cette requête XML, en utilisant éventuellement jQuery? Y at-il sérialiseur norme que je peux utiliser pour construire un objet JS et sérialisation en XML? Quelle est la façon idiomatiques de le faire?

Répondre

2

Une option que je trouve (que je suis actuellement en utilisant, en attendant pas de meilleure option) est le json2xml plugin for jQuery.

Exemple d'utilisation:

var xmlHead = '<?xml version="1.0" encoding="utf-8" ?>'; 

var j = { 
    a : '1', 
    b : 'B', 
    c : { 
     m : 'm' 
    } 
}; 

var opts = { 
    rootTagName : 'myRoot', 
    nodes : ['a', 'b', 'c'] 
}; 

var xml = $.json2xml(j, opts); 
var xmlData = xmlHead + xml; 
2

Vous pouvez vous GSerializer de l'API pour sérialiser et désérialiser objets javascripts. Voici un exemple de code

var myObject = new MyObject(); // The object to serialize 
var serializer = new GSerializer(); // The Serializer 
var serializedXML = serializer.serialize(myObject, 'MyObject'); // Grab the serialized XML 
var deserializedObject = serializer.deserialize(serializedXML); // Deserialize the object from the serialized XML string 

Référez-this article pour plus de détails.

+0

+1 fonctionne comme un charme pour moi. Et pas de frais généraux en termes de jQuery/JSON nécessaire. – Bazzz

Questions connexes