use express
This commit is contained in:
parent
f277c1dd33
commit
5b82f1cb4d
@ -22,6 +22,7 @@
|
|||||||
"connect-redirection": "0.0.1",
|
"connect-redirection": "0.0.1",
|
||||||
"connect-route": "0.1.5",
|
"connect-route": "0.1.5",
|
||||||
"dotenv": "^4.0.0",
|
"dotenv": "^4.0.0",
|
||||||
|
"express": "^4.14.0",
|
||||||
"nodemon": "^1.11.0",
|
"nodemon": "^1.11.0",
|
||||||
"pg": "4.1.1",
|
"pg": "4.1.1",
|
||||||
"redis": "0.8.1",
|
"redis": "0.8.1",
|
||||||
|
69
server.js
69
server.js
@ -3,14 +3,15 @@ var url = require('url');
|
|||||||
var fs = require('fs');
|
var fs = require('fs');
|
||||||
|
|
||||||
var winston = require('winston');
|
var winston = require('winston');
|
||||||
var connect = require('connect');
|
|
||||||
var route = require('connect-route');
|
var route = require('connect-route');
|
||||||
var connect_st = require('st');
|
var connect_st = require('st');
|
||||||
var connect_rate_limit = require('connect-ratelimit');
|
var connect_rate_limit = require('connect-ratelimit');
|
||||||
var passport = require('passport');
|
var passport = require('passport');
|
||||||
var redirect = require('connect-redirection');
|
var redirect = require('connect-redirection');
|
||||||
var query = require('connect-query');
|
var query = require('connect-query');
|
||||||
|
var express = require('express')
|
||||||
|
var connectEnsureLogin = require('connect-ensure-login');
|
||||||
|
var session = require('express-session')
|
||||||
|
|
||||||
require('dotenv').config();
|
require('dotenv').config();
|
||||||
var DocumentHandler = require('./lib/document_handler');
|
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'));
|
var config = JSON.parse(fs.readFileSync('./config.js', 'utf8'));
|
||||||
config.port = process.env.PORT || config.port || 7777;
|
config.port = process.env.PORT || config.port || 7777;
|
||||||
config.host = process.env.HOST || config.host || 'localhost';
|
config.host = process.env.HOST || config.host || 'localhost';
|
||||||
|
config.secret = process.env.SECRET || '43rndsafdsakf;djsafkdsarf';
|
||||||
config.origin = 'http://' + config.host + ":" + config.port + "/";
|
config.origin = 'http://' + config.host + ":" + config.port + "/";
|
||||||
|
|
||||||
// Set up the loggergg
|
// Set up the loggergg
|
||||||
@ -108,14 +110,16 @@ var documentHandler = new DocumentHandler({
|
|||||||
keyGenerator: keyGenerator
|
keyGenerator: keyGenerator
|
||||||
});
|
});
|
||||||
|
|
||||||
var app = connect();
|
var app = express();
|
||||||
app.use(redirect());
|
//app.use(redirect());
|
||||||
app.use(query());
|
//app.use(query());
|
||||||
// Rate limit all requests
|
// Rate limit all requests
|
||||||
|
/*
|
||||||
if (config.rateLimits) {
|
if (config.rateLimits) {
|
||||||
config.rateLimits.end = true;
|
config.rateLimits.end = true;
|
||||||
app.use(connect_rate_limit(config.rateLimits));
|
app.use(connect_rate_limit(config.rateLimits));
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
var GoogleStrategy = require('passport-google-oauth20').Strategy;
|
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
|
// first look at API calls
|
||||||
app.use(passport.initialize());
|
app.use(passport.initialize());
|
||||||
app.use(passport.session());
|
app.use(passport.session());
|
||||||
|
//app.use(connectEnsureLogin.ensureLoggedIn());
|
||||||
|
var router = app;
|
||||||
|
|
||||||
app.use(route(function(router) {
|
// get raw documents - support getting with extension
|
||||||
// get raw documents - support getting with extension
|
//router.get('/', require('connect-ensure-login').ensureLoggedIn());
|
||||||
router.get('/', require('connect-ensure-login').ensureLoggedIn());
|
router.get('/login', passport.authenticate('google', { scope: ['profile'] }));
|
||||||
router.get('/login', passport.authenticate('google', { scope: ['profile'] }));
|
|
||||||
|
|
||||||
router.get( '/auth/google/callback',
|
router.get( '/auth/google/callback',
|
||||||
passport.authenticate( 'google', { scope: ['profile'],
|
passport.authenticate( 'google', { scope: ['profile'],
|
||||||
successRedirect: '/loggedin',
|
successRedirect: '/',
|
||||||
failureRedirect: '/auth/failure'
|
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('/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());
|
//app.use(require('connect-ensure-login').ensureLoggedIn());
|
||||||
// Otherwise, try to match static files
|
// Otherwise, try to match static files
|
||||||
|
Loading…
x
Reference in New Issue
Block a user