UNPKG

mongo-web-handler

Version:

This a helper for creating ExpressJS Web Handler for MongoDB querying.

68 lines (53 loc) 1.66 kB
// Node requires var log4js = require('log4js'); var express = require('express'); var bodyParser = require('body-parser'); var mongojs = require('mongojs'); // Local requires var config = require('./config'); var MONGOWH = require('./mongo-web-handler'); // Init Logger var _Logger = function (){ log4js.configure({ appenders: [ { type: 'console' }, { type: 'file', filename: config.log.logFile, category: 'rest-server' } ] }); var aLogger = log4js.getLogger( 'rest-server'); aLogger.setLevel( config.log.level ); return aLogger; }(); _Logger.info("Server Init."); // Init mongo connection var db = mongojs( config.mongo.url, config.mongo.collections ); _Logger.info("MongoDB : Init connection..."); var items = db.collection('items'); _Logger.info("MongoDB : Done."); // Init Web Server var web = express(); web.use(express.static('public')); web.use(bodyParser.json()); /* ============================================================= Routes Installations ============================================================ */ web.route( config.http.routing.ITEMS_LIST_ENDPOINT ) .get( MONGOWH.createMongoWebHandler( _Logger, "ItemsListQuery", function( req, res, resultsCallbackFunc ){ items.find( {}, resultsCallbackFunc ); }) ); /* ===================================================== SERVER LISTENING ===================================================== */ var server = web.listen( config.http.port, config.http.backlog, function(){ var port = server.address().port; _Logger.info("Start listening on port %s...", port); });