I am trying to understand if there is any difference. I'll try to explain it with an example from express docs: https://expressjs.com/en/guide/using-middleware.html
function logOriginalUrl (req, res, next) {
console.log('Request URL:', req.originalUrl)
next()
}
function logMethod (req, res, next) {
console.log('Request Type:', req.method)
next()
}
const logStuff = [logOriginalUrl, logMethod]
app.get('/user/:id', logStuff, (req, res, next) => {
res.send('User Info')
})
logOriginalUrl and logMethod are middlewares in this example. What would happen if I write it like:
function logOriginalUrl() {
console.log('Request URL:', req.originalUrl);
}
function logMethod() {
console.log('Request Type:', req.method);
}
app.get('/user/:id', (req, res, next) => {
logOriginalUrl();
logMethod();
res.send('User Info')
})
Is there any difference between these two? This is a very simple example but it can be applied for any other example where you have to manipulate req or do anything else.
What is the difference between a middleware and calling + awaiting a function inside route handler?
Theoretically, anything I can do as middleware, I feel like I can achieve exact same thing by awaiting same function in route handler function. So, what do I miss?