-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathserver.js
62 lines (52 loc) · 1.45 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
57
58
59
60
61
62
var path = require('path')
, express = require('express')
, bodyParser = require('body-parser')
, Datastore = require('nedb');
// Embedded 'database' as PoC for MVP
db = new Datastore({filename: 'db.json', autoload: true});
var app = express();
app.use(express.static(__dirname + '/public'));
app.use(bodyParser.json({limit: '50mb'}));
var PORT = 8000;
app.listen(PORT, function() {
console.log('listening ' + PORT);
});
app.post('/login', function(req, res) {
var username = req.body.username;
var password = req.body.password;
// TODO: Make real database, make it useful
// TODO: Don't store passwords as plaintext
var entry = {
username: username,
password: password,
};
var res = [];
db.find(entry, function(err, res) {
if (err) {
console.log("DB ERROR: " + err);
} else if (docs.length == 0) {
// login fail
} else {
// login success
}
});
});
app.post('/signup', function(req, res) {
var username = req.body.username;
var password = req.body.password;
var entry = {
username: username,
password: password,
};
db.insert(entry, function(err, newEntry) {
if (err) {
console.log("DB ERROR: " + err);
} else {
// signup success
}
});
});
// WARNING: No routes beyond this point
app.get('*', function(req, res){
res.status(404).send('Invalid Page');
});