0% found this document useful (0 votes)
38 views20 pages

L26 - NodeJS 2

This document discusses NodeJS web application architecture and frameworks. It covers the client layer, server layer, business layer, and data layer of a NodeJS app. It then explains how to create a basic NodeJS web server, handling requests and responses. Finally, it provides an overview of the Express web framework in NodeJS, including using middleware, routing, and serving static files.

Uploaded by

C-dawg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views20 pages

L26 - NodeJS 2

This document discusses NodeJS web application architecture and frameworks. It covers the client layer, server layer, business layer, and data layer of a NodeJS app. It then explains how to create a basic NodeJS web server, handling requests and responses. Finally, it provides an overview of the Express web framework in NodeJS, including using middleware, routing, and serving static files.

Uploaded by

C-dawg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

NodeJS 2

Webserver and Frameworks

COS216
AVINASH SINGH
DEPARTMENT OF COMPUTER SCIENCE
UNIVERSITY OF PRETORIA
NodeJS – Web App Architecture

 Client Layer
 Server Layer
 Business Layer
 Data Layer
NodeJS – Web App Architecture
NodeJS – Create a server

 Require the “http” module.


 Use the method “createServer” and a port to listen on.
var http = require('http’);
var fs = require('fs’);
var url = require('url’);
// Create a server
http.createServer( function (request, response) {
// webserver logic
}).listen(8081);
NodeJS – Create a server

 Now add some processing and logic


 Every webpage/request needs an HTTP status code, a server
needs to respond with this code so that the client/recipient knows
the status of the request.

 writeHead function takes the first parameter as the status code


and a second parameter as a JSON array for the MIME types.

 Example:
 response.writeHead(404, {'Content-Type': 'text/html’});
NodeJS – Create a server

 To write any data the “write” function is used from


the response object.
Example:
response.write(“Error: Could not find the file.”);

To send the response you use the “end” function.


Example:
response.end();
NodeJS – Create a server

Putting it all together


NodeJS – Create a client
NodeJS – Create Web Socket
NodeJS – Express Framework

 Middleware for HTTP requests


 Routing table
 Dynamic rendering and templates
NodeJS – Express Framework

 In order for Express to work you need to install it alongside some


other modules.
 npm install express --save
 npm install body-parser --save
 npm install cookie-parser --save
 npm install multer --save

body-parser − This is a node.js middleware for handling JSON, Raw, Text and URL encoded form data.
cookie-parser − Parse Cookie header and populate req.cookies with an object keyed by the cookie names.
multer − This is a node.js middleware for handling multipart/form-data.
NodeJS – Express Framework

 Express is a module, so in order to use it you need to


require it and initialize and create an object:
var express = require('express');
var app = express();
You will use the variable app for any express related
functions/logic
NodeJS – Express Framework

Creating a Express Server:


NodeJS – Express Framework

 Example of a HTTP Request and Response in Express:


NodeJS – Express Framework

 Extracting information from a GET request:


NodeJS – Express Framework

 Extracting information from a POST request:


NodeJS – Express Static Files

 What happens if you want to serve JS, CSS, Images in Express?


 Express comes with this feature where you specify the folder
for the static content that you want served.
 The “use” function of express is used to load other supported
modules/libraries into express.

 Example of serving static files:


app.use(express.static('public’)); // where “public” is a folder with
content inside
NodeJS – Express Static Files

 Example of serving a file:


NodeJS – Express Cookie
Management

 For this you would need to require “cookie-parser”

You might also like