You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.6 KiB
JavaScript

import express from "express";
import mongoose from "mongoose";
import config from "config";
import cors from "cors";
import visitsReset from "./services/VisitsReset.js";
import errorMiddleware from "./middlewares/errorMiddleware.js";
import fileUpload from "express-fileupload";
import cookieParser from "cookie-parser";
import authRouter from "./routers/auth.router.js"
import userRouter from "./routers/user.router.js"
import artistRouter from "./routers/artist.router.js"
import playlistRouter from "./routers/playlist.router.js"
import videoRouter from "./routers/video.router.js"
import visitRouter from "./routers/visits.router.js"
const PORT = config.get('serverPort');
const app = express();
app.use(cors({origin:['http://www.localhost:3000', 'http://localhost:3000'], credentials: true}));
app.use(express.static('public'));
app.use(express.json());
app.use(fileUpload({}));
app.use(cookieParser())
app.use('/api/auth', authRouter);
app.use('/api/user', userRouter);
app.use('/api/artist', artistRouter);
app.use('/api/playlist', playlistRouter);
app.use('/api/video', videoRouter);
app.use('/api/visit', visitRouter);
app.use(errorMiddleware);
const start = async() => {
try {
mongoose.set('strictQuery', true);
await mongoose.connect(config.get('dbUrl', {
useNewUrlParser: true,
useUnifieldTopology: true
}));
app.listen(PORT, ()=> {
console.log(`Сервер успешно запущен на порту: ${PORT}`)
visitsReset();
})
} catch (e) {
console.log(e)
}
}
start();