-
Notifications
You must be signed in to change notification settings - Fork 2
/
server.js
56 lines (51 loc) · 1.48 KB
/
server.js
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
const express = require("express");
const app = express();
const bodyParser = require("body-parser");
const mongoose = require("mongoose");
const path = require("path");
const fs = require("fs");
const singup = require("./routes/userSingup");
const login = require("./routes/userLogin");
const uploads = require("./routes/handle_postes");
const handleInfoUser = require("./routes/userHandelInfo");
require("dotenv").config();
// connect Mongodb
const URI = "mongodb://127.0.0.1:27017/hashtag";
mongoose.set("strictQuery", true);
mongoose
.connect(process.env.DATABASE_URL || URI)
.then(() => console.log("Database connected."))
.catch((err) => {
console.log(err);
console.log("Database Not Connected.");
});
app.use(bodyParser.json());
app.use("/api", singup);
app.use("/api", login);
app.use("/uploads", uploads);
app.use("/api", handleInfoUser);
// this medelware for searching files // """ For Test """
app.use((req, res, next) => {
var imagepath = path.join(__dirname, req.url || "none");
fs.stat(imagepath, (err, info) => {
if (err) {
next();
return;
}
if (info.isFile()) {
res.sendFile(imagepath);
} else {
next();
}
});
});
app.get("/uploads", (req, res) => {
res.end();
});
app.use(express.static(path.join(__dirname, "/client/build")));
app.get("*", (req, res) => {
res.sendFile(path.resolve(__dirname, "client", "build", "index.html"));
});
app.listen(process.env.PORT | 8080, () => {
console.log("Server connected.");
});