Files
POCloud-Live-Reports/server/index.js
Patrick McDonagh e9add9d575 allow aws endpoint
2017-09-15 15:23:52 -05:00

53 lines
1.6 KiB
JavaScript

var express = require('express');
var app = express();
var cors = require('cors');
var session = require('express-session')
var morgan = require('morgan');
var bodyParser = require('body-parser');
var MongoStore = require('connect-mongo')(session);
app.use(express.static(__dirname + "/public"));
app.use(morgan('dev'));
let whitelist = ['localhost:3000','http://localhost:8080', 'http://api.henrypump.cloud', 'http://api.henrypump.cloud:3000'];
var corsOptions = {
origin: function (origin, callback) {
if (whitelist.indexOf(origin) !== -1) {
callback(null, true)
} else {
callback(new Error('Not allowed by CORS: ' + origin))
}
}, credentials: true
}
app.use(function(req,res,next){ req.headers.origin = req.headers.origin || req.headers.host; next(); })
app.use(cors(corsOptions));
app.set('trust proxy', 1) // trust first proxy
app.use(session({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true,
store: new MongoStore({ url: 'mongodb://localhost:27017/pocloud-live-reports-server' })
}))
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.get('/', require('./routes').index);
app.get('/deviceTypes', require('./routes').deviceTypes);
app.get('/devices/:deviceId/values', require('./routes').channelValues);
app.get('/devices', require('./routes').devices);
app.get('/companies', require('./routes').companies);
app.get('/alldata', require('./routes').getAllData);
app.post('/login', require('./routes').login);
app.get('/login', require('./routes').getLogin);
app.get('/logout', require('./routes').logout);
app.listen(3000, function () {
console.log('Listening on port 3000!')
})