diff --git a/README.md b/README.md index 29b1d71..2072e28 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # assignment_build_a_nodejs_server Building your first Node.js server and exploring the request and response objects + +Steven Zarrella \ No newline at end of file diff --git a/app.js b/app.js new file mode 100644 index 0000000..8540e72 --- /dev/null +++ b/app.js @@ -0,0 +1,39 @@ +"use strict"; + +const http = require('http'), + fs = require('fs'); + +let server = http.createServer((req, res) => { + fs.readFile('./public/index.html', 'utf8', function(err, data) { + if (err) { + res.writeHead(404); + res.end("404 - Not Found"); + } else { + res.writeHead(200, { + "Content-Type": "text/html" + }); + + let reqArray = ["url", "method", "httpVersion", "headers"], + reqObjectArray = [], + resArray = ["statusMessage", "statusCode", "_header"], + resObjectArray = []; + + for (var item in reqArray) { + reqObjectArray.push({[reqArray[item]]: req[reqArray[item]]}); + }; + + for (var item in resArray) { + resObjectArray.push({[resArray[item]]: res[resArray[item]]}); + }; + + let newData = data.replace("{{ req }}", JSON.stringify(reqObjectArray)); + newData = newData.replace("{{ res }}", JSON.stringify(resObjectArray)); + + res.end(newData); + } + }); +}); + +server.listen(3000, 'localhost', function() { + console.log("Listening at http://localhost:3000"); +}); \ No newline at end of file diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..6ea8b98 --- /dev/null +++ b/public/index.html @@ -0,0 +1,22 @@ + + +
+ +{{ req }}{{ res }}
+
+
+
\ No newline at end of file