server.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. let express = require('express')
  2. let app = express()
  3. let sequelize = require('./models').sequelize
  4. let config = require('./config/server.js')
  5. //Middle-ware
  6. let bodyParser = require('body-parser')
  7. let morgan = require('morgan')
  8. let session = require('express-session')
  9. app.use(bodyParser.json())
  10. app.use(bodyParser.urlencoded({ extended: true }))
  11. app.use(session({
  12. secret: config.sessionSecret,
  13. resave: false,
  14. saveUninitialized: true,
  15. cookie: {}
  16. }))
  17. if(process.env.NODE_ENV !== 'test' && process.env.NODE_ENV !== 'production') {
  18. app.use(morgan('dev'))
  19. }
  20. if(process.env.NODE_ENV === 'production') {
  21. app.set('trust proxy', 1);
  22. session.cookie.secure = true
  23. }
  24. app.use('/api/v1/user', require('./routes/user'))
  25. app.use('/api/v1/admin_token', require('./routes/admin_token'))
  26. app.use('/api/v1/category', require('./routes/category'))
  27. sequelize
  28. .sync({ force: true })
  29. .then(() => {
  30. app.listen(config.port, () => {
  31. console.log('Listening on ' + config.port)
  32. app.locals.appStarted = true
  33. app.emit('appStarted')
  34. })
  35. })
  36. .catch((err) => {
  37. console.log(err)
  38. })
  39. module.exports = app