.profile/_GAMES/SMM/server.js
2018-02-20 21:23:40 -05:00

60 lines
No EOL
1.5 KiB
JavaScript

//////////////////////////////////////////////////////////////////
/// ///
/// Dependencies ///
/// ///
//////////////////////////////////////////////////////////////////
let port = 80,
path = require('path'),
express = require('express'),
subdomain = require('express-subdomain'),
colors = require('colors'),
morgan = require('morgan'),
app = express(),
router = express.Router();
// API routes
const ROUTES = {
PICKUP: require('./routes/pickup'),
PLAYLIST: require('./routes/playlist'),
}
// START APPLICATION
// Create router
app.use(morgan('dev'));
router.use(express.json());
router.use(express.urlencoded({
extended: true
}));
// Create subdomain
app.use(subdomain('wup-ama.app', router));
// Setup routes
router.use('/v1/api/pickup', ROUTES.PICKUP); // pickup API route
router.use('/v1/api/playlist', ROUTES.PLAYLIST); // playlist API route
// 404 handler
router.use((request, response) => {
response.status(404);
response.send();
});
// non-404 error handler
router.use((error, request, response) => {
let status = error.status || 500;
response.status(status);
response.json({
app: 'api',
status: status,
error: error.message
});
});
// Starts the server
app.listen(port, () => {
console.log('Server'.blue + ' started '.green.bold + 'on port '.blue + new String(port).yellow);
});