-
Notifications
You must be signed in to change notification settings - Fork 43
/
server.js
36 lines (29 loc) · 1.14 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
// A static file server for development use.
// By Curran Kelleher July 2014
//
// Run in the background with the shell command "node server.js &".
var port = 8000,
express = require('express'),
bodyParser = require('body-parser'),
fs = require('fs'),
app = express();
// Serve files from the parent directory.
app.use('/', express.static(__dirname + '/'));
// Draws from http://stackoverflow.com/questions/5710358/how-to-get-post-query-in-express-node-js
app.use(bodyParser.json()); // to support JSON-encoded bodies
app.use(bodyParser.urlencoded()); // to support URL-encoded bodies
// Handle JSON post requests for saving data flow graphs.
app.post('/writeDataFlowGraph', function(req, res) {
// Extract the serialized model state from the request body.
var state = req.body,
json = JSON.stringify(state.data, null, 2),
filename = './dataFlowGraphs/' + state.name + '.json';
// Close the connection.
res.send('');
// Write the file to disk.
fs.writeFile(filename, json, function(err) {
if(err) { console.log(err); }
});
});
app.listen(port);
console.log('Now serving http://localhost:'+port+'/index.html');