forked from gMajr/gMajorMobile
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.js
More file actions
59 lines (51 loc) · 1.61 KB
/
Copy pathserver.js
File metadata and controls
59 lines (51 loc) · 1.61 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
// dependencies
var express = require('express');
var bodyParser = require('body-parser');
var url = require('url');
var querystring = require('querystring');
var db = require(__dirname + '/db/db.js');
var path = require('path');
var fs = require('fs');
// server variables
var server = express();
var router = express.Router();
var port = process.env.PORT || 8080;
server.use(express.static(__dirname + '/www'));
server.listen(port);
db.init();
// API Router
// handles requests starting with '/api'
server.use('/api', router);
router.use(bodyParser.json());
router.get('/', function(req, res){
console.log('get /api accessed');
});
router.route('/threads')
.post(function(req, res){
var message = req.body;
var newThread = {};
newThread.music = message.music;
newThread.authors = [message.author];
newThread.messages = [message.message];
newThread.photos = [message.photoUrl];
newThread.timestamps = [message.timestamp];
newThread.fbids = [message.fbid];
db.insert('gmajor.threads', newThread, res);
})
.get(function(req, res){
var parsedUrl = url.parse(req.url);
var params = querystring.parse(parsedUrl.query);
db.match('gmajor.threads', res, params);
});
router.route('/threads/:threadId')
// appends a message to the thread in the DB with id threadId
.post(function(req, res){
var message = req.body;
var threadId = req.params.threadId;
db.append('gmajor.threads', res, threadId, message);
})
// functional but is not currently used
.get(function(req, res){
var threadId = req.params.threadId;
db.find('gmajor.threads', res, threadId);
});