Nas aplicações Web, os middlewares são usados para aplicar lógica global a todas as solicitações, antes que elas atinjam os controllers (ou handlers).
Essas tarefas podem incluir autenticação, autorização, manipulação de cookies, logging, compressão de resposta, entre outros.
Os middlewares têm a capacidade de interceptar uma solicitação antes que ela atinja a lógica do controller, processar ou modificar a solicitação e a resposta, e então passá-las adiante na cadeia de middlewares ou enviá-las para o controller correspondente.
Código fonte: https://github.com/ortizdavid/golang-fiber-webApp