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
File details
Details for the file django-ns-ratelimit-0.0.3.tar.gz.
File metadata
- Download URL: django-ns-ratelimit-0.0.3.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/59.6.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a670f463bf0f907da676a79a0c2387a7295bfffbbb267a35851fba9ea418cb29
|
|
| MD5 |
b20383a2cd3f2f644fcb844365bf35cf
|
|
| BLAKE2b-256 |
27851bebdc414e449572444cbf962c33c9e9d644dd93415a29ad57792495874a
|