0

I'm new to node.js and trying to convert my spring mvc restful webservice on Node.js. I managed to succeed up to certain extent but one show stopper for me is, that My consumer is a html5 based phoneapp and can consume only xml based response, but in Node.js I m getting only json response. Please refer the below code snippet.

exports.area = function(client, res) {
    client
            .query(
                    "select * from storeinfo",
                    function(err, results, fields) {

                        if (err) {
                            throw err;
                        }                                                                   
                        res.json(results);
                        //res.send(results);                        


                    });
};

Please let me know how to response text as xml instead of json(res.json(results)).

Please refer the link to know the format of xml I required as response.

http://www.ibm.com/developerworks/webservices/library/wa-spring3webserv/Figure1.JPG

Thanks Jitender

1
  • 1
    What are you using to send the response? It looks like you're probably using Express, but you need to specify as Node.js doesn't know or care what you send to clients. Commented Nov 22, 2013 at 19:55

3 Answers 3

9
res.header('Content-Type','text/xml').send(xml)
Sign up to request clarification or add additional context in comments.

Comments

0

you can install object-to-xml library

npm install --save object-to-xml

and then try this

 var o2x = require('object-to-xml');
    res.set('Content-Type', 'text/xml');
    res.send(o2x({
       '?xml version="1.0" encoding="utf-8"?' : null,
         clients: { client: results}
        }));

Comments

0

You can try to without any library to output xmlstring.

res.type('text/xml').send("<library><book>2</book></library>")

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.