middleware.go 542 B

1234567891011121314151617
  1. package controllers
  2. import (
  3. "github.com/gravitl/netmaker/logic"
  4. "github.com/gravitl/netmaker/servercfg"
  5. "net/http"
  6. )
  7. func OnlyServerAPIWhenUnlicensedMiddleware(handler http.Handler) http.Handler {
  8. return http.HandlerFunc(func(writer http.ResponseWriter, request *http.Request) {
  9. if servercfg.ErrLicenseValidation != nil && request.URL.Path != "/api/server/status" {
  10. logic.ReturnErrorResponse(writer, request, logic.FormatError(servercfg.ErrLicenseValidation, "forbidden"))
  11. return
  12. }
  13. handler.ServeHTTP(writer, request)
  14. })
  15. }