go__limiter_demo/limiter.go
Frederic G. MARAND b0953dd36e Basic demo.
2022-03-11 09:51:49 +01:00

17 lines
353 B
Go

package main
import (
"net/http"
"golang.org/x/time/rate"
)
func limit(limiter *rate.Limiter, next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
if !limiter.Allow() {
http.Error(w, http.StatusText(http.StatusTooManyRequests), http.StatusTooManyRequests)
}
next.ServeHTTP(w, r)
})
}