Sha256: 5c05ee112fb4b13cd94f9414366a69621925a7bc24298bc5f14ea3054741e0db
Contents?: true
Size: 919 Bytes
Versions: 26
Compression:
Stored size: 919 Bytes
Contents
/** * Module dependencies. */ var sys = require('sys'), Connect = require('./../../lib/connect'); /** * Faux data. */ var data = [1,2,3,4,5]; function format(req, res, next){ if (/\.(\w+)$/.exec(req.url)) { req.format = RegExp.$1; req.originalUrl = req.url; req.url = req.url.replace('.' + req.format, ''); } next(); } function respond(req, res, next){ var body = (function(){ switch (req.format) { case 'json': return JSON.stringify(data); case 'xml': return '<items>' + data.map(function(n){ return '<item>' + n + '</item>' }) + '</items>'; default: return data.join(); } })(); res.writeHead(200, { 'Content-Type': 'text/plain' }); res.end(body); } module.exports = Connect.createServer( format, respond );
Version data entries
26 entries across 26 versions & 1 rubygems