/
eb
/
cooper
Обзор
Документация
Войти
/
eb
/
cooper
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
main
backend/app.js
60 строк
2 KB
Evgeniy Budaev
signup
01 май 2022, 10:15
01 май 2022, 10:15
e7ece8f
Код
Авторство
О чём код?
const express = require('express'); const bodyParser = require('body-parser'); const fs = require('fs'); const path = require('path'); const mongoose = require('mongoose'); const productsRoutes = require('./routes/products-routes'); const categoriesRoutes = require('./routes/categories-routes'); const usersRoutes = require('./routes/users-routes'); const HttpError = require("./models/http-error"); require('dotenv').config(); const app = express(); app.use(bodyParser.json()); app.use(express.urlencoded({ extended: true })); app.use('/uploads/images', express.static(path.join('uploads', 'images'))); app.use((req, res, next) => { res.setHeader('Access-Control-Allow-Origin', '*'); res.setHeader('Access-Control-Allow-Headers', 'Origin, X-Requested-With, Content-Type, Accept, Authorization'); res.setHeader('Access-Control-Allow-Methods', 'GET, POST, PATCH, DELETE'); next(); }); app.use('/api/v1/categories', categoriesRoutes); app.use('/api/v1/products', productsRoutes); app.use('/api/v1/users', usersRoutes); app.use((req, res, next) => { throw new HttpError('Could not find this route.', 404); }); app.use((error, req, res, next) => { if (req.file) { fs.unlink(req.file.path, err => { console.log(err); }); } if (res.headerSent) { return next(error); } res.status(error.code || 500); res.json({message: error.message || 'An unknown error occurred!'}); }); // Connecting to database mongoose .connect( process.env.MONGODB_URI ).then(() => { console.log('Connected to database!'); }).catch(() => { console.log('Connection failed!'); }); app.listen(process.env.PORT, () => { console.log(`Server is running on port ${process.env.PORT}`); });