go-res
go-res copied to clipboard
Is it possible to create a middleware for any type of handlers?
Hi! I'm trying to create a middleware for handlers. I succeeded to create a middleware for a specific type of handler. For example:
func (s *service) myMiddleware(h res.CollectionHandler) res.CollectionHandler {
return func(r res.CollectionRequest) {
// Do stuff...
h(r)
}
}
s.router.Handle("teams",
res.GetCollection(s.myMiddleware(s.findTeams)),
...
)
I would like to know if I can create a middleware for any type of handler? For example:
s.router.Handle("...",
res.GetCollection(s.myMiddleware(s.findTeams)),
res.GetModel(s.myMiddleware(s.findTeam)),
res.Call(s.myMiddleware(s.createTeam)),
)
I can't find a common "generic" interface to use, is it even possible?
Thanks in advance 🙌