Assist
Install: npm install assist
Assist provides a few conveniences you might be used to from frameworks like express
, but packaged as middleware.
Helpers include:
req.body
res.send()
res.json()
res.render()
res.redirect()
res.text()
req.body
var http = require('http');
var sw = require('simpleware');
var assist = require('assist');
var bodyParser = assist.body({
url: true,
json: true,
multipart: false,
maxLength: 8192
});
var middlewareStack = [bodyParser];
function serve(req, res) {
var name = req.body;
res.end('Hello ' + name);
}
var app = sw.mw(middlewareStack, serve);
http.createServer(app).listen(80);
res.send()
...
var middlewareStack = [assist.send()];
function serve(req, res) {
var name = req.body;
res.send('Hello ' + name);
res.send('What? Where am I?!', {
code: 404,
type: 'text/plain',
charset: 'ISO-8859-1',
});
}
...
res.json()
...
var middlewareStack = [assist.json()];
function serve(req, res) {
var r = {
response: 'angry',
errcode: 2319,
messages: ['I can\'t feel my face!', 'Try using less glue.']
};
res.json(r);
res.json(r, 201);
}
...
res.render()
...
var helloTemplate = hogan.compile('Hello {{name}}, you are {{age}} years old');
function renderTemplate(req, name, data) {
if(name == 'hello') {
return helloTemplate.render(data);
}
return '';
}
var middlewareStack = [assist.send(), assist.render(renderTemplate)];
function serve(req, res) {
res.render('hello', {name: 'Harold', age: 47});
}
...
res.redirect()
...
var middlewareStack = [assist.redirect()];
function serve(req, res) {
res.redirect('/to/a/deep/dark/scary/directory', 301);
}
...
res.text()
...
var middlewareStack = [assist.text()];
function serve(req, res) {
var name = req.body;
res.text('Hello ' + name);
res.text('What? Where am I?!', {
code: 404,
charset: 'ISO-8859-1',
});
res.text('Hmm...', 404);
}
...