django-ratelimit

Screenshot Software:
django-ratelimit
Szczegóły programowe:
Wersja: 0.1
Filmu: 11 May 15
Wywoływacz: James Socol
Licencja: Wolny
Popularność: 3

Rating: nan/5 (Total Votes: 0)

django-ratelimit jest aplikacja, która zapewnia Django dekorator, aby ocenić-granicznych widoki & nbsp; Ograniczenie może być na podstawie adresu IP lub pola we wniosku - albo GET lub POST zmiennej..
Jeśli ograniczenie prędkości jest przeszło, albo 403 Forbidden mogą być wysyłane lub wniosek może być opatrzone ograniczonej atrybutu, co pozwala wykonać kolejne czynności, jak dodanie captcha do formularza.
Używanie Django Ratelimit
z ratelimit.decorators import ratelimit jest największą rzeczą, którą musisz zrobić. ratelimit Dekorator oferuje kilka opcjonalnych argumentów z domyślnych rozsądnych (kursywą).
ip: Czy aby ocenić limitu na podstawie adresu IP. Prawdziwy
Blok: Czy blokować żądania zamiast opisywania. Fałszywy
Metoda: Która metoda (-y) HTTP, aby ocenić-limitu. Może być ciąg znaków lub listę. wszystko
Pole: Które pole (pola) HTTP użyć do stopy terminu. Może być ciąg znaków lub listę. żaden
Stawka: liczba wniosków w jednostce czasu dozwolony. 5 / m
Przykłady
ratelimit ()
MyView def (wniosek):
& Nbsp; # będzie prawdziwa, jeśli ten sam IP sprawia, że ​​więcej niż 5 wniosków / minute.
& Nbsp; was_limited = getattr (wniosek, "ograniczone", False)
& Nbsp; return HttpResponse ()
ratelimit (blok = True)
MyView def (wniosek):
& Nbsp; # Jeśli ten sam IP sprawia,> 5 reqs / min, powróci HttpResponseForbidden
& Nbsp; return HttpResponse ()
ratelimit (pole = "nazwa użytkownika")
def login (wniosek):
& Nbsp; # Jeśli sama nazwa użytkownika lub adres IP jest używany> 5 razy / min, to będzie prawda.
& Nbsp; # `Wartość username` będzie pochodzić z GET i POST, zależy od
& Nbsp; # metoda żądania.
& Nbsp; was_limited = getattr (wniosek, "ograniczone", False)
& Nbsp; return HttpResponse ()
ratelimit (method = "POST")
def login (wniosek):
& Nbsp; # stosować tylko ograniczający szybkość do postów.
& Nbsp; powrócić HttpResponseRedirect ()
ratelimit (pole = ['nazwa użytkownika', 'other_field'])
def login (wniosek):
& nbsp; # Użyj wartości wielu pól.
& Nbsp; return HttpResponse ()
ratelimit (stopa = '4 / h ")
def powolne (wniosek):
& Nbsp; # Pozwól 4 reqs / godzinę.
& Nbsp; return HttpResponse ()

Wymagania :

  • Python
  • Django

Inne programy z deweloperem James Socol

django-dnt
django-dnt

11 May 15

django-adminplus
django-adminplus

20 Feb 15

django-waffle
django-waffle

20 Feb 15

django-mq
django-mq

14 Apr 15

Komentarze do django-ratelimit

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!