-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathserver.js
More file actions
116 lines (102 loc) · 3.98 KB
/
server.js
File metadata and controls
116 lines (102 loc) · 3.98 KB
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
// // import the express library
// const express = require('express')
// const app = express()
//
// // allows http request to be parsed using 'req.body'
// var bodyParser = require('body-parser')
// app.use(bodyParser.urlencoded({ extended: false }))
// app.use(bodyParser.json())
//
// // express-session -- API for cookies
// var session = require('express-session');
// app.use(session({
// resave: false,
// saveUninitialized: true,
// secret: 'any string' // encryption of cookie
// }));
//
// // Mongoose (CLI for mongoDB)
// // connects to a mongo database
// const mongoose = require('mongoose')
// // mongoose.connect('mongodb://localhost:27017/whiteboard-cs56100-sp20',
// // { useNewUrlParser: true, useUnifiedTopology: true })
//
// // local host -- fetches whatever database is currently running
// // movie_match -- is pointing at the collection within the current database
// mongoose.connect('mongodb://localhost/movie_match', // TODO mongoATLAS
// { useNewUrlParser: true, useUnifiedTopology: true })
//
// // try {
// // mongoose.connect(
// // 'mongodb+srv://admin:admin@movie-match-cluster.6c1jv.mongodb.net/movie_match?retryWrites=true&w=majority'
// // ,
// // {useNewUrlParser: true, useUnifiedTopology: true}, () =>
// // console.log("connected"));
// // } catch (error) {
// // console.log("could not connect");
// // }
//
//
//
// // Allows CORS from a particular URL, or "*" allows all URLs
// app.use(function(req, res, next) {
// res.header("Access-Control-Allow-Origin",
// "http://localhost:4200"); // TODO ANGULAR HEROKU DEPLOY
//
// res.header("Access-Control-Allow-Headers",
// "Origin, X-Requested-With, Content-Type, Accept");
// res.header("Access-Control-Allow-Methods",
// "GET, POST, PUT, DELETE, OPTIONS");
// res.header("Access-Control-Allow-Credentials", "true");
// next();
// });
//
// // Allows the other components to interact with http requests
// // Called 'endpoints'
// require('./controllers/users.controller.server')(app)
// require('./controllers/session.controller.server')(app)
// require('./controllers/movies.controller.server')(app)
// require('./controllers/curate.controller.server')(app)
//
// // app.get('/hello', (req, res) => res.send('hello world!'))
//
// // port the server listens at
// app.listen(3000)
// import the express library
const express = require('express')
const app = express()
app.set('trust proxy',1);
const PORT = process.env.PORT || 3000
var bodyParser = require('body-parser')
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
var session = require('express-session');
app.use(session({
resave: false,
saveUninitialized: false,
secret: 'any string',
cookie : {
sameSite: 'none', // Allows cookies from different site
secure: true
}
}));
const mongoose = require('mongoose')
const uri = 'mongodb+srv://admin:admin@movie-match-cluster.6c1jv.mongodb.net/movie_match?retryWrites=true&w=majority'
const localDB = 'mongodb://localhost/movie_match'
mongoose.connect(uri || localDB, { useNewUrlParser: true, useUnifiedTopology: true })
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin",
"http://movie-match-angular.herokuapp.com");
res.header("Access-Control-Allow-Headers",
"Origin, X-Requested-With, Content-Type, Accept");
res.header("Access-Control-Allow-Methods",
"GET, POST, PUT, DELETE, OPTIONS");
res.header("Access-Control-Allow-Credentials", "true");
next();
});
require('./controllers/users.controller.server')(app)
require('./controllers/session.controller.server')(app)
require('./controllers/movies.controller.server')(app)
require('./controllers/curate.controller.server')(app)
//app.listen(3000)
app.listen(PORT, console.log(`Server is starting at ${PORT}`))