· 5 years ago · Sep 08, 2020, 11:28 PM
1//Importing
2import express from 'express';
3import mongoose from 'mongoose';
4import Messages from "./dbMessages.js";
5import Pusher from "pusher";
6
7//App Config
8const app = express();
9const port = process.env.PORT || 9000;
10
11const pusher = new Pusher({
12 appId: '1069450',
13 key: 'b3599bcf5afe8a29d613',
14 secret: 'ea4ba74014202d8f1000',
15 cluster: 'eu',
16 useTLS: true,
17});
18
19//Middleware
20app.use(express.json());
21
22
23//DB Config
24const connection_url = "mongodb+srv://admin:YOUR_PASSWORD@cluster0.l0poh.mongodb.net/YOUR_APP_NAME?retryWrites=true&w=majority";
25
26mongoose.connect(connection_url, {
27 useCreateIndex: true,
28 useNewUrlParser: true,
29 useUnifiedTopology: true
30});
31
32const db = mongoose.connection;
33db.once("open", () => {
34 console.log("Db connected");
35
36 const msgCollection = db.collection("messagecontents");
37 const changeStream = msgCollection.watch();
38
39 changeStream.on("change", (change) => {
40 console.log(change);
41
42 });
43
44});
45
46
47//???
48
49
50//Api Routes
51app.get("/", (req, res) => res.status(200).send("hello world"));
52
53app.get("/messages/sync", (req, res) => {
54
55 Messages.find((err, data) => {
56 if (err) {
57 res.status(500).send(err);
58 } else {
59 res.status(200).send(data);
60 }
61 });
62});
63
64
65app.post("/messages/new", (req, res) => {
66 const dbMessage = req.body;
67
68 Messages.create(dbMessage, (err, data) => {
69 if (err){
70 res.status(500).send(err);
71 } else {
72 res.status(201).send(data);
73 }
74 });
75});
76
77//Listen
78app.listen(port, () => console.log(`Listening on localhost:${port}`));