app.js 943 B

123456789101112131415161718192021222324252627282930
  1. import express from "express";
  2. import compression from "compression";
  3. import mongoose from "mongoose";
  4. import cors from "cors";
  5. import cookieParser from "cookie-parser";
  6. import {catchError} from "./HttpError.js";
  7. const allowedOrigin = process.env.NODE_ENV === "production" ? "https://workout.leemorgan.dev" : "http://localhost:8000";
  8. let mongoString = "mongodb://127.0.0.1/workout";
  9. if(process.env.COOKIE_SECRET){
  10. mongoString = `mongodb://workout:${process.env.MONGODB_PASS}@127.0.0.1:27017/workout?authSource=admin`;
  11. }
  12. mongoose.connect(mongoString);
  13. const app = express();
  14. app.use(cookieParser(process.env.COOKIE_SECRET));
  15. app.use(compression());
  16. app.use(cors({
  17. origin: process.env.NODE_ENV === "production" ? "https://workout.leemorgan.dev" : "http://localhost:8000",
  18. credentials: true
  19. }));
  20. app.use(express.json());
  21. app.use(catchError);
  22. if(process.env.NODE_ENV !== "production"){
  23. app.listen(8000);
  24. }
  25. export default app;