Skip to content

kurrunk37/ring-rate-limiter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ring-rate-limiter

Standard Ring middleware functions , lightweight, efficient, Rate limiter.

Installation

To install, add the following to your project :dependencies:

[huzhengquan/ring-rate-limiter "0.1.1"]

Usage

(require '[ring.middleware.rate-limiter :refer [wrap-rate-limiter]])

(defn handler [request]
  {:status 200
   :headers {"Content-Type" "text/html"}
   :body "Hello World"})

(def app
  (wrap-rate-limiter
    handler
    :interval 60 ; required (s)
    :max-in-interval 3 ; required
    :key-in-request [:headers "x-forwarded-for"] ; default [:remote-addr]
    :debug true ; default false
    :fail-response "error" ; default "Too Many Requests"
    ))

About

clojure ring middleware, rate limiter

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published