diff --git a/README.md b/README.md index 29b1d71..14be606 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,3 @@ # assignment_build_a_nodejs_server Building your first Node.js server and exploring the request and response objects +Hi.. This is Lakshmi Maduri! diff --git a/app.js b/app.js new file mode 100644 index 0000000..7cc6464 --- /dev/null +++ b/app.js @@ -0,0 +1,53 @@ +var http = require('http'); +var fs = require('fs'); + + +var hostname = 'localhost'; +var port = 3000; + +////Node server sends back "Hello world!" :) - (this code works!) + +// var server = http.createServer((req, res)=>{ +// res.writeHead(200, { +// 'Content-Type':'text/plain' +// }); +// res.end("Hello World!"); +// }); +// +// server.listen(port, hostname, ()=>{ +// console.log(`Server is listening at ${hostname}:${port}`); +// }); + +//Displaying request and response data +var server = http.createServer((req, res)=>{ + fs.readFile('./public/index.html', 'utf-8', function(err, data){ + if(err){ + res.writeHead(404); + res.end("File Not Found"); + }else{ + var reqObj = { + url:req.url, + method:req.method, + version:req.httpVersion, + header:req.headers + }; + var new_req_str = JSON.stringify(reqObj, null, 2); + data = data.replace("{{ req }}", new_req_str); + var resObj = { + statusMessage:res.statusMessage, + statusCode:res.statusCode, + _header:res._header + }; + var new_res_str = JSON.stringify(resObj, null, 2); + data = data.replace("{{ res }}", new_res_str); + res.writeHead(200,{ + 'Content-Type':'text/html' + }); + res.end(data); + } + }); +}); + +server.listen(port, hostname, ()=>{ + console.log(`Server is listening at ${hostname}:${port}`); + }); diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..fd0a10f --- /dev/null +++ b/public/index.html @@ -0,0 +1,25 @@ + +
+ + +{{ req }}
+{{ res }}
+