Introduction

In Go Middleware can be used to execute code before and after handler function. It uses the power of Single Function Interfaces. Can be introduced at any time without affecting the other middleware. For Ex: Authentication logging can be added in later stages of development without disturbing the existing code.

Remarks

The Signature of middleware should be (http.ResponseWriter, *http.Request) i.e. of http.handlerFunc type.

Normal Handler Function

Middleware Calculate time required for handlerFunc to execute

CORS Middleware

Auth Middleware

Recovery Handler to prevent server from crashing