app-json-res

0.1.0 • Public • Published

app-json-res

Part of app helpers project.

Simplify express route handlers.
Aggregate request params into single object (params, body, query).
Takes care of response sending.
Works with promises.
You only need to return value from route handler.

Installation

npm install app-json-res

Usage

var app = require('express')();
var adapt = require('app-json-res');
var bodyParser = require('body-parser');
var Promise = require('bluebird');
 
app.use(bodyParser());
 
// Response body will be json array -> [1, 2, 3]
app.get('/numbers', adapt(function(params, req) {
    return [1,2,3];
}));
 
// Same with promise -> [1, 2, 3]
app.get('/numbers', adapt(function(params, req) {
    return Promise.resolve([1,2,3]);
}));
 
// Use params
// GET /numbers?pivot=2 -> [3]
app.get('/numbers', adapt(function(params, req) {
    return [1, 2, 3].filter(function(n) {
        return n > params.pivot;
    });
}));
 
// POST /login
// Request body:
// username: johny
// password: qwerty
app.post('/login', adapt(function(params, req) {
    return someAsyncAuthChecker(params.username, params.password).then(function() {
        return { success: true };
    });
}));
 
// And so on..

License

MIT

Package Sidebar

Install

npm i app-json-res

Weekly Downloads

2

Version

0.1.0

License

MIT

Last publish

Collaborators

  • boo1ean