2011-09-02 222 views

Respuesta

40

Parece que la xmlbuilder-js biblioteca puede hacer esto para usted. Si tiene npm instalado, puede npm install xmlbuilder.

Se le permitirá hacer esto (tomado de su ejemplo):

var builder = require('xmlbuilder'); 
var doc = builder.create(); 

doc.begin('root') 
    .ele('xmlbuilder') 
    .att('for', 'node-js') 
    .ele('repo') 
     .att('type', 'git') 
     .txt('git://github.com/oozcitak/xmlbuilder-js.git') 
    .up() 
    .up() 
    .ele('test') 
    .txt('complete'); 

console.log(doc.toString({ pretty: true })); 

que se traducirá en:

<root> 
    <xmlbuilder for="node-js"> 
    <repo type="git">git://github.com/oozcitak/xmlbuilder-js.git</repo> 
    </xmlbuilder> 
    <test>complete</test> 
</root> 
+1

muy útil. Gracias – j03m

+1

Tengo un pequeño problema con esto. Publiqué en [github] (https://github.com/oozcitak/xmlbuilder-js/issues/23) si estás interesado en echar una mano. – ThomasReggi

+0

Gracias por la respuesta, aquí encontré un tutorial sobre este tema, espero que sea útil para alguien. https://programmerblog.net/generate-xml-with-nodejs-and-mysql/ –

2

cambios recientes en xmlbuilder requieren raíz nombre del elemento pasado a create()

ver el ejemplo de trabajo

var builder = require('xmlbuilder'); 
var doc = builder.create('root') 
    .ele('xmlbuilder') 
    .att('for', 'node-js') 
    .ele('repo') 
     .att('type', 'git') 
     .txt('git://github.com/oozcitak/xmlbuilder-js.git') 
     .up() 
    .up() 
    .ele('test') 
    .txt('complete') 
.end({ pretty: true }); 
console.log(doc.toString()); 
Cuestiones relacionadas