From 5b82f1cb4d1f00b22c7b0864ff672e925589b7f2 Mon Sep 17 00:00:00 2001 From: Anthony Metzidis Date: Thu, 26 Jan 2017 17:07:45 -0800 Subject: [PATCH] use express --- package.json | 1 + server.js | 69 ++++++++++++++++++++++++++++------------------------ 2 files changed, 38 insertions(+), 32 deletions(-) diff --git a/package.json b/package.json index f3a6928..d6e1fb8 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "connect-redirection": "0.0.1", "connect-route": "0.1.5", "dotenv": "^4.0.0", + "express": "^4.14.0", "nodemon": "^1.11.0", "pg": "4.1.1", "redis": "0.8.1", diff --git a/server.js b/server.js index 096f0de..26f7e32 100644 --- a/server.js +++ b/server.js @@ -3,14 +3,15 @@ var url = require('url'); var fs = require('fs'); var winston = require('winston'); -var connect = require('connect'); var route = require('connect-route'); var connect_st = require('st'); var connect_rate_limit = require('connect-ratelimit'); var passport = require('passport'); var redirect = require('connect-redirection'); var query = require('connect-query'); - +var express = require('express') +var connectEnsureLogin = require('connect-ensure-login'); +var session = require('express-session') require('dotenv').config(); var DocumentHandler = require('./lib/document_handler'); @@ -19,6 +20,7 @@ var DocumentHandler = require('./lib/document_handler'); var config = JSON.parse(fs.readFileSync('./config.js', 'utf8')); config.port = process.env.PORT || config.port || 7777; config.host = process.env.HOST || config.host || 'localhost'; +config.secret = process.env.SECRET || '43rndsafdsakf;djsafkdsarf'; config.origin = 'http://' + config.host + ":" + config.port + "/"; // Set up the loggergg @@ -108,14 +110,16 @@ var documentHandler = new DocumentHandler({ keyGenerator: keyGenerator }); -var app = connect(); -app.use(redirect()); -app.use(query()); +var app = express(); +//app.use(redirect()); +//app.use(query()); // Rate limit all requests +/* if (config.rateLimits) { config.rateLimits.end = true; app.use(connect_rate_limit(config.rateLimits)); } +*/ var GoogleStrategy = require('passport-google-oauth20').Strategy; @@ -139,39 +143,40 @@ passport.use(new GoogleStrategy({ } )); +app.use(session({ secret: config.secret, name: 'tt' })); // first look at API calls app.use(passport.initialize()); app.use(passport.session()); +//app.use(connectEnsureLogin.ensureLoggedIn()); +var router = app; -app.use(route(function(router) { - // get raw documents - support getting with extension - router.get('/', require('connect-ensure-login').ensureLoggedIn()); - router.get('/login', passport.authenticate('google', { scope: ['profile'] })); +// get raw documents - support getting with extension +//router.get('/', require('connect-ensure-login').ensureLoggedIn()); +router.get('/login', passport.authenticate('google', { scope: ['profile'] })); - router.get( '/auth/google/callback', - passport.authenticate( 'google', { scope: ['profile'], - successRedirect: '/loggedin', - failureRedirect: '/auth/failure' - })); - router.get('/raw/:id', function(request, response, next) { - var skipExpire = !!config.documents[request.params.id]; - var key = request.params.id.split('.')[0]; - return documentHandler.handleRawGet(key, response, skipExpire); - }); - // add documents - router.post('/documents', function(request, response, next) { - return documentHandler.handlePost(request, response); - }); - // get documents - router.get('/documents/:id', function(request, response, next) { - var skipExpire = !!config.documents[request.params.id]; - return documentHandler.handleGet( - request.params.id, - response, - skipExpire - ); - }); +router.get( '/auth/google/callback', + passport.authenticate( 'google', { scope: ['profile'], + successRedirect: '/', + failureRedirect: '/auth/failure' })); +router.get('/raw/:id', function(request, response, next) { + var skipExpire = !!config.documents[request.params.id]; + var key = request.params.id.split('.')[0]; + return documentHandler.handleRawGet(key, response, skipExpire); +}); +// add documents +router.post('/documents', function(request, response, next) { + return documentHandler.handlePost(request, response); +}); +// get documents +router.get('/documents/:id', function(request, response, next) { + var skipExpire = !!config.documents[request.params.id]; + return documentHandler.handleGet( + request.params.id, + response, + skipExpire + ); +}); //app.use(require('connect-ensure-login').ensureLoggedIn()); // Otherwise, try to match static files