Skip to main content

Express Application-Level Middleware


Hi everyone . This is Godwill today, I will be talking about Express.js application-level middleware. I recommend you check out my Youtube videos and other Node Js and Express tutorials on this blog.

If you have coded in Node Js or Express Js before, I guess you must have come across the word middleware. In this tutorial, I am going to cover the following;

  1. What is a middleware?

  2. Types of middleware

  3. Case of an application-level middleware

What is a middleware in Express?

Middleware is a function that gets executed during the request-response lifecycle of an application. So you got the word function which literally mean middleware are actually functions in your Express application. These middleware functions have access to the request and response objects of the route it is attached to it in the application lifecycle. According to expressjs.com, middleware functions are capable of;

  1. Executing block of codes,
  2. Modifying the request and response objects,
  3. End an apps request and response cycle and 
  4. Call or handover to the next middleware

I would like you to understand that, Express JS is a middleware framework. That is, when coding in Express js, you are writing series of routes and middleware functions.

One of the simplest example is the route handler function;

Express Application-Level Middleware

Medium.com say; “First of all, think of middleware as a simple function that will take a request object and pass control to the next middleware function or send a response to the client.”

Middleware functions can also be seen as the functions placed between the request and response object.

Now, lets look at some various types of middleware;

Types of middleware

According to expressjs.com official website, we have they following;

  1. Application-level middleware
  2. Router-level middleware
  3. Error-handling middleware
  4. Built-in middleware
  5. Third-party middleware

Case of an application-level middleware

A route handler is a perfect example of an application-level middleware. Application-level middleware functions are mostly bound to the instance of the app object with either (or both) app.use and app.method where method refers to HTTP method which could be get, put, post and delete.

carefully look at the code below;

The difference between this code and the one above is the introduction of the keyword “next”. As the word implies, this word passes or handover to the next middleware function. If we had another middleware function in this code that we want to execute, then we will practically add another line after the response which is the next () method.

Now, lets run some code in server.js and see how it works. 


Express Application-Level Middleware

Run your code, open your browser and navigate to http://localhost:3000. You will see the response we set above.

At the same time on the console you will see the text “I am the first middleware display”. The middleware prints out the text above and then calls the next () middleware.

OUTPUT

Express Application-Level Middleware

Express Application-Level Middleware

Thanks for coding with me. Watch out for a video tutorial on this, and other content on the other types of middleware. Feel free to drop your questions or worries. 

Chaow!! ☺

Comments

Popular posts from this blog

JavaScript Functions

  Hi there, and welcome to another exciting lesson on JavaScript. If this is your first time here, please do well to check out our previous lessons. In the previous lesson, we were discussing JavaScript math methods. It was very intuitive as we got to learn how to use the various math methods. To proceed, we shall be looking at JavaScript functions.  A function in JavaScript like in every other programming language could be defined as a block of code that is written to perform a particular task, and this function is usually invoked or called before it is being implemented. We have been talking about methods throughout the previous lessons right. Do you know that those methods are actually functions? Yes they are functions. You can now have an overview of the importance of functions in every programming language. How do we create a function in JS? To create a function, you follow the format function functionName(Argument) {//Block of code }. Some functions do have a return val...

JavaScript Math Methods

Hello everyone, and welcome to another exciting JavaScript lesson. In the last lessons you have been seeing other methods being used in JS (for example, the string methods). We shall go further into exploring other methods. This time, it’s going to be math methods. Do not move an inch because it’s going to be a very exciting. Before we look at what a math method is, let’s have an overview of math objects. A math object in JavaScript is a static built-in object that includes properties and methods used in performing mathematical tasks. Talking about math properties, they have the syntax Math.property . Some examples are Math.E that returns Euler’s number, Math.PI that returns PI, Math.LN2 that returns the natural logarithm of 2, and many others. The various JavaScript methods contained in the math object, thus, make mathematical operations easier and reduce effort as well as time in math-oriented programming. Some JS methods include abs( ), ceil( ), cos( ), sqrt( ), pow( ), log( ) ...

How to generate random numbers using NumP1

Hello. Welcome to another edition on this platform. For more better understanding, do checkout our YouTube channel to get the video tutorial. In this article of today, we are going to see how to generate random numbers using any of the following methods: Generating a random number Generating a random float and integer Generating random number arrays Generating random number from an array What is a random number? This is a number which cannot be predicted before its occurrence. This number might not different every time. Programmatically, they are two categories of random numbers:     Pseudo-Random numbers       True Random numbers. Just as programs which are written by programmers are a set of instructions, we must follow an algorithm to generate random numbers. Random numbers which are generated using an algorithm are called Pseudo-Random numbers. To generate a true random number, it is important to get the data from sources such as the keyboards, mou...