transfer.sh/vendor/github.com/VojtechVitek/ratelimit/throttle_test.go

24 lines
443 B
Go
Raw Normal View History

2017-03-28 17:26:32 +02:00
package ratelimit_test
import (
"net/http"
"time"
"github.com/VojtechVitek/ratelimit"
)
func ExampleThrottle() {
middleware := ratelimit.Throttle(1)
handler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("working hard...\n\n"))
if f, ok := w.(http.Flusher); ok {
f.Flush()
}
time.Sleep(10 * time.Second)
w.Write([]byte("done"))
})
http.ListenAndServe(":3333", middleware(handler))
}