A Django app for limit authorized and anonymous users.
Project description
DJANGO-NS-RATELIMIT
Project description
django-ns-ratelimit is django app for limit requests using rate limit class, decorators and middleware.
Usage
Periods in format:
S: For seconds
M: For minutes
H: For hour
D: For Day
e.g: "10S" "1M" "1D"
Decorators
user_method_ratelimit:
Used for user specific request rate limiting for class base apis
class SampleView(APIView):
@user_method_ratelimit(5, "1M")
def get(self, request):
pass
anon_method_ratelimit:
Used for Anonymous user requests rate limiting for class base apis
class SampleView(APIView):
@anon_method_ratelimit(5, "1M")
def get(self, request):
pass
user_func_ratelimit:
Used for user specific request rate limiting for function base apis
class SampleView(APIView):
@user_func_ratelimit(5, "1M")
def get(self, request):
pass
anon_func_ratelimit:
Used for Anonymous user requests rate limiting for function base apis
class SampleView(APIView):
@anon_func_ratelimit(5, "1M")
def get(self, request):
pass
Middlewares
UserRateLimitMiddleware
Add this django settings Middlewares for User rate limiting
MIDDLEWARE = [
.
.
.
.
"ratelimit.middleware.UserRateLimitMiddleware",
]
AnonRateLimitMiddleware
Add this django settings Middlewares for Anonymous rate limiting
MIDDLEWARE = [
.
.
.
.
"ratelimit.middleware.AnonRateLimitMiddleware",
]
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for django-ns-ratelimit-0.0.3.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | a670f463bf0f907da676a79a0c2387a7295bfffbbb267a35851fba9ea418cb29 |
|
MD5 | b20383a2cd3f2f644fcb844365bf35cf |
|
BLAKE2b-256 | 27851bebdc414e449572444cbf962c33c9e9d644dd93415a29ad57792495874a |