Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 0 additions & 16 deletions kevinChuang/promise.js

This file was deleted.

57 changes: 18 additions & 39 deletions kevinChuang/server.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@
const http = require('http');
const fs = require('fs');
const stream = require('stream');
const jsonParse = require('./promise');

exports = module.exports = {};

Expand All @@ -17,51 +16,31 @@ http.createServer((req,res)=> {

}

if(req.url === '/' && req.method === 'POST'){
var bufferArray = [];
// var bufferString;
else if(req.url === '/' && req.method === 'POST'){
var bufferString = '';
req.on('data',(data)=> {
bufferArray.push(data);
console.log('data',data);
// bufferString += data.toString();
console.log(bufferArray);
return res.end();
bufferString += data.toString();
});

req.on('end',()=> {
var string = bufferArray.toString();
console.log('string',string,typeof string);
// var jsonObject = {};

jsonParse(string).then((data)=> {
console.log('data',data, typeof data);
var fileNum = fs.readdirSync(__dirname+'/data').length+1;
var file = fs.createWriteStream(__dirname + '/data/'+ fileNum +'.json');

console.log('fileNumber',fileNum);

var bufferStream = new stream.PassThrough();
var incomingBuffer = new Buffer(JSON.stringify(data));

console.log('incomingBuffer',incomingBuffer, typeof incomingBuffer);

bufferStream.end(incomingBuffer);
bufferStream.pipe(file);
res.statusCode = 200;
res.end(console.log("Data written to file"));
}, (err)=> {
res.statusCode = 400;
res.end(err);
});
var newFile = (fs.readdirSync(__dirname + '/data/')).length + 1;
var file = fs.createWriteStream(__dirname + '/data/test' + newFile + '.json');
var bufferStream = new stream.PassThrough();
var incomingBuffer = new Buffer(bufferString);

bufferStream.end(incomingBuffer);
bufferStream.pipe(file);
res.statusCode=200;
return res.end('File written\n');
});
} else {
res.writeHead(404,{
'Content-Type' : 'text/html'
});
return;
res.write('Not Found');
res.statusHead = 404;
}

res.writeHead(404,{
'Content-Type' : 'text/html'
});
res.write('Not Found');
res.statusHead = 404;
}).listen(3000,()=>{
console.log('Listening on port 3000');
});