Node to parse xml using xml2js


Question

I am trying to parse and query for an element within an xml using xml2js. My xml string is as follows:

var xml = "<config><test>Hello</test><data>SomeData</data></config>";

What I want is to extract the value in and assign it to var extractedData

Here's what I have so far:

var parser = new xml2js.Parser();
parser.parseString(xml, function(err,result){
  //Extract the value from the data element
  extractedData = result['data'];
}

This does not work. Can somebody point out how I might be able to grab the values from my xml?

Thanks

This doesn't seem to be working. Can somebody tell me what might be the issue here?

1
10
6/5/2012 8:28:45 PM

Accepted Answer

it works for me

var xml2js = require('xml2js');
var xml = "<config><test>Hello</test><data>SomeData</data></config>";

var extractedData = "";
var parser = new xml2js.Parser();
parser.parseString(xml, function(err,result){
  //Extract the value from the data element
  extractedData = result['config']['data'];
  console.log(extractedData);
});
console.log("Note that you can't use value here if parseString is async; extractedData=", extractedData);

result:

SomeData
Note that you can't use value here if parseString is async; extractedData= SomeData
23
8/12/2015 7:31:15 PM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon