-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
56 lines (43 loc) · 1.67 KB
/
Copy pathindex.js
File metadata and controls
56 lines (43 loc) · 1.67 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import express from "express";
import dotenv from "dotenv";
import cors from "cors";
import { sequelize } from "./db.js";
import fileUpload from "express-fileupload";
import cookieParser from "cookie-parser";
//import Models from "../server/models/model.js";
import path from "path";
import router from "./routes/index.js";
import ErrorHandler from "./middleware/ErrorHandlingMiddleware.js";
dotenv.config();
//const __dirname = path.resolve();
const PORT = process.env.PORT || 5000;
const app = express();
//Для работы с корзиной
app.use(cookieParser(process.env.SECRET_KEY));
// Что бы обойти cors
//app.use(cors());
app.use(cors({ origin: "http://localhost:3000", credentials: true }));
// Формат json для Express
app.use(express.json());
// Для того что бы просматривать изображение в браузере
app.use(express.static(path.resolve("static")));
//Для заугрузки изображение
app.use(fileUpload({}));
// Здесь инициализация роутов
app.use("/api", router);
//Обработка ошибок , последний Middleware
app.use(ErrorHandler);
app.set("trust proxy", 1);
const start = async () => {
try {
//Подключение к базе данных
await sequelize.authenticate();
console.log("Подключение к базе данных произошло успешно");
//Эта фукция будет сверять данные из базы данных со схемой
await sequelize.sync();
app.listen(PORT, () => console.log(`Server started on port ${PORT}`));
} catch (err) {
console.log(err);
}
};
start();