I am trying to write a plugin that modifies HTTP requests (headers) on every request, so far I have got everything working, but I still need to include the directive for my handler for it to be run. I am probably overseeing something. How do I need to configure my plugin so that it just runs on every request without the directive being needed?
func init() {
caddy.RegisterModule(Module{})
httpcaddyfile.RegisterHandlerDirective("test", parseCaddyfile)
}
type Module struct {
}
func (m Module) ServeHTTP(response http.ResponseWriter, request *http.Request, next caddyhttp.Handler) error {
fmt.Println("TEST")
response.Header().Add("Test-Header", "test")
request.Header.Add("Test-Header", "test")
return next.ServeHTTP(response, request)
}