index.js 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. const express = require('express');
  2. const bodyparser = require('body-parser');
  3. //const passport = require('passport');
  4. const mongoose = require('mongoose');
  5. //const cors = require('cors');
  6. // const config = require('./config/db.config');
  7. const userRoutes = require('./routes/user');
  8. const employeeRoutes = require('./routes/employee');
  9. const authRoutes = require('./routes/auth');
  10. //const oauthRoutes = require('./routes/oauth');
  11. const ticketRoutes = require('./routes/ticket');
  12. const emailsRoutes = require('./routes/emailing');
  13. //const authGoogle = require('./routes/google');
  14. //const authFacebook = require('./routes/facebook');
  15. const tirageRoutes = require('./routes/tirage');
  16. const contactRoutes = require('./routes/contact');
  17. const restaurantRoutes = require('./routes/restaurant');
  18. const Logger = require('./logging')
  19. //metrics
  20. const makeApiMiddleware = require("api-express-exporter");
  21. //const apiMetrics = require('prometheus-api-metrics');
  22. const promBundle = require("express-prom-bundle");
  23. const metricsMiddleware = promBundle({includeMethod: true, includePath: true});
  24. const app = express();
  25. Logger.error('hello world', 'Nan c est juste pour tester les logs')
  26. app.use(metricsMiddleware);
  27. //app.use(apiMetrics());
  28. //metrics
  29. app.use(makeApiMiddleware());
  30. //app.use(cors());
  31. app.get("/api", (req, res) => {
  32. res.status(200).send("Api Works.");
  33. });
  34. // var corsOptions = {
  35. // origin: 'https://localhost:4200',
  36. // optionsSuccessStatus: 200
  37. // }
  38. //Définition des CORS Middleware
  39. app.use(function(req, res, next) {
  40. res.setHeader(
  41. "Access-Control-Allow-Headers",
  42. "X-Requested-With,content-type, Accept,Authorization,Origin"
  43. );
  44. res.setHeader("Access-Control-Allow-Origin", "*");
  45. res.setHeader(
  46. "Access-Control-Allow-Methods",
  47. "GET, POST, OPTIONS, PUT, PATCH, DELETE"
  48. );
  49. res.setHeader("Access-Control-Allow-Credentials", true);
  50. next();
  51. });
  52. // parse requests body params
  53. app.use(bodyparser.json());
  54. app.use(bodyparser.urlencoded({extended: true}));
  55. //app.use(passport.initialize());
  56. //simple route
  57. app.use('api/users', userRoutes );
  58. app.use('/api/employees', employeeRoutes );
  59. app.use('/api/tickets', ticketRoutes );
  60. app.use('api/auth', authRoutes );
  61. //app.use('/api/auth', oauthRoutes );
  62. //app.use('/api/auth', authGoogle );
  63. app.use('/api/emails', emailsRoutes );
  64. //app.use('/api/auth/google', authGoogle );
  65. //app.use('/api/auth/facebook', authFacebook );
  66. app.use('/api/tirage', tirageRoutes );
  67. app.use('/api/contact', contactRoutes );
  68. app.use('/api/restaurants', restaurantRoutes );
  69. //connexion database
  70. require('./lib/db');
  71. //listen for requests
  72. const PORT = process.env.PORT || 4000;
  73. app.listen(PORT, () => {
  74. console.log(`Api listen on port ${PORT}.`);
  75. });