django-ratelimit

Software screenshot:
django-ratelimit
Software informatie:
Versie: 0.1
Upload datum: 11 May 15
Ontwikkelaar: James Socol
Licentie: Gratis
Populariteit: 3

Rating: nan/5 (Total Votes: 0)

Django-ratelimit is een Django app die een decorateur biedt om van gedachten-limiet waardeert & nbsp; Het beperken kan worden gebaseerd op IP-adres of een veld in de aanvraag - ofwel een GET of POST variabele..
Als de snelheid limiet wordt overtrof, ofwel een 403 verboden kan worden verzonden, of het verzoek kan worden geannoteerd met een beperkte attribuut, zodat u een andere actie te ondernemen, zoals het toevoegen van een captcha op een formulier.
Met behulp van Django Ratelimit
van ratelimit.decorators import ratelimit is het grootste wat je hoeft te doen. Deratelimit decorateur biedt een aantal optionele argumenten met zinvolle defaults (cursief).
ip: Of het nu gaat om op basis van het IP-limiet te geven. Waar
block: Of het nu gaat om het verzoek in plaats van annoteren blokkeren. Vals
methode: Welke HTTP methode (s) om te beoordelen-limiet. Kan een string of een lijst zijn. alle
gebied: Welke HTTP veld (en) te gebruiken om te beoordelen-limiet. Kan een string of een lijst zijn. geen
rate: Het aantal verzoeken per tijdseenheid toegestaan. 5 / m
Voorbeelden:
ratelimit ()
def MyView (aanvraag):
& Nbsp; # Zal waar zijn als hetzelfde IP maakt meer dan 5 aanvragen / minuut.
& Nbsp; was_limited = getattr (verzoek, 'beperkt', Valse)
& Nbsp; terugkeren HttpResponse ()
ratelimit (blok = True)
def MyView (aanvraag):
& Nbsp; # Als dezelfde IP maakt> 5 reqs / min, zal terugkeren HttpResponseForbidden
& Nbsp; terugkeren HttpResponse ()
ratelimit (veld = 'gebruikersnaam')
def login (aanvraag):
& Nbsp; # Als dezelfde gebruikersnaam OR IP wordt gebruikt> 5 keer / min, zal dit waar zijn.
& Nbsp; # Het `username` waarde zal komen van GET of POST, wordt bepaald door de
& Nbsp; # verzoek methode.
& Nbsp; was_limited = getattr (verzoek, 'beperkt', Valse)
& Nbsp; terugkeren HttpResponse ()
ratelimit (method = "POST")
def login (aanvraag):
& Nbsp; # gelden alleen snelheidsbeperkende te berichten.
& Nbsp; terugkeren HttpResponseRedirect ()
ratelimit (veld = ['gebruikersnaam', 'other_field'])
def login (aanvraag):
& Nbsp; # Met meerdere veldwaarden.
& Nbsp; terugkeren HttpResponse ()
ratelimit (rate = '4 / h)
def langzame (aanvraag):
& Nbsp; # Sta 4 reqs / uur.
& Nbsp; terugkeren HttpResponse ()

Eisen

  • Python
  • Django

Andere software van ontwikkelaar James Socol

django-adminplus
django-adminplus

20 Feb 15

Bleach
Bleach

1 Mar 15

django-waffle
django-waffle

20 Feb 15

Reacties op django-ratelimit

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!