Helper functions for API handling on NodeJS. The functions are pure and curried with Ramda.
$ npm install alien-node-api-utils --save
Run the specs
$ npm test
// Example API route such as '/users' which could reasonably leverage a
// 'user' model which would return a promise or catch with an error object.
// The error object passed in the catch should include a 'statusCode' property
// that is specific to the respective error. If it does not, the api utils
// will default to 500.
// Note: Because the util functions are curried, we can keep them pure and by
// invoking with req and res, as shown below.
var apiUtils = require('alien-node-api-utils'),
userModel = require('./models/user');
function getUsers(req, res, next) {
userModel.getUsers().
then(apiUtils.jsonResponseSuccess(req, res)).
catch(apiUtils.jsonResponseError(req, res, next));
};
module.exports = getUsers;