15 votes

Comment générer du JSON avec ExpressJS/RailwayJS (Node.JS) ?

J'explorais le développement en Node.JS et j'ai trouvé ExpressJS et RailwayJS (basé sur Express) qui sont des frameworks pour Node. Le moteur de templating utilisé par Jade/EJS semble être davantage destiné au HTML. Comment puis-je générer du JSON, par exemple lorsque je développe une API ?

56voto

jibsales Points 3766

Express et Railway s'appuient tous deux sur le module HTTP de node et fournissent un objet "réponse" comme deuxième argument du rappel du gestionnaire de route/middleware. Le nom de cet argument est généralement raccourci en res pour économiser quelques frappes.

Pour envoyer facilement un objet sous forme de message JSON, Express expose la méthode suivante :

res.json({ some: "object literal" });

Exemples :

app.use(function (req, res, next) {
  res.json({ some: "object literal" });
});

// -- OR -- //

app.get('/', function (req, res, next) {
  res.json({ some: "object literal" });
});

Consultez la documentation sur expressjs.com et la source github est également bien documentée.

11voto

freakish Points 20067

Vous créez simplement des objets JavaScript normaux, par exemple :

var x = {
    test: 1,
    embedded: {
        attr1: 'attr',
        attr2: false
    }
};

y

JSON.stringify(x);

le transforme en chaîne JSON. Notez que x peut contenir des fonctions qui seront omises. Voir aussi JSON.stringify renvoie à x.toJSON() si .toJSON() est disponible.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X