52 lines
1.3 KiB
JavaScript
52 lines
1.3 KiB
JavaScript
const express = require("express");
|
|
const app = express();
|
|
const server = require("http").createServer(app);
|
|
const mongoose = require("mongoose");
|
|
const configs = require("./configs");
|
|
const chalk = require("chalk");
|
|
const helmet = require("helmet");
|
|
const morgan = require("morgan");
|
|
|
|
app.use(express.urlencoded({ extended: true }));
|
|
app.use(express.json());
|
|
app.use(helmet());
|
|
|
|
// Logs
|
|
app.use(morgan("dev"));
|
|
|
|
// Connect Mongoose
|
|
mongoose
|
|
.connect(configs.mongodburl, {
|
|
autoIndex: true
|
|
})
|
|
.then(() => {
|
|
console.log(chalk.cyanBright.bold("Mongodb is live!"));
|
|
})
|
|
.catch((error) => {
|
|
console.log("Mongodb error: " + error.message);
|
|
});
|
|
|
|
// Save Route
|
|
app.use("/api/save", require("./route/save.route"));
|
|
// Device Set Route
|
|
app.use("/api/set", require("./route/device.set.route"));
|
|
// Device Log Route
|
|
app.use("/api/device-log", require("./route/device.log.route"));
|
|
// 404 Not Found Endpoint
|
|
app.use((req, res) => {
|
|
res.status(404).json({ error: true, message: "Not found!" });
|
|
});
|
|
// Root public route
|
|
app.use("*", (req, res) => {
|
|
// res.sendFile("public/", { root: __dirname });
|
|
res.sendStatus(400);
|
|
});
|
|
// Server Listening
|
|
server.listen(configs.port, () => {
|
|
console.log(chalk.yellowBright.bold.red("Listening: " + configs.port));
|
|
});
|
|
// Error Handling
|
|
app.on("eror", (error) => {
|
|
console.log(error);
|
|
});
|