django-ratelimit

Skjermbilde programvare:
django-ratelimit
Prog.varedetaljer:
Versjon: 0.1
Last opp dato: 11 May 15
Utvikler: James Socol
Lisens: Gratis
Popularitet: 3

Rating: nan/5 (Total Votes: 0)

django-ratelimit er en Django app som gir en dekoratør å rangere-limit utsikt & nbsp; Begrense kan være basert på IP-adresse eller et felt i forespørsel - enten en GET eller POST variabel..
Hvis grensen frekvensen exceded, enten en 403 Forbidden kan sendes, eller anmodningen kan annotert med et begrenset attributt, slik at du kan ta en annen handling som å legge en captcha til et skjema.
Ved hjelp av Django Ratelimit
fra ratelimit.decorators import ratelimit er den største tingen du trenger å gjøre. Denratelimit dekoratør gir flere valgfrie argumenter med fornuftige defaults (i kursiv).
ip: Enten å rangere-grense basert på IP. Sann
block: Enten å blokkere forespørsel istedenfor kommentere. False
metode: Hvilken HTTP metode (r) for å rangere-grensen. Kan være en streng eller en liste. alt
felt: Hvilken HTTP-feltet (s) som skal brukes til hastighetsgrense. Kan være en streng eller en liste. none
rate: Antall forespørsler per tidsenhet tillatt. 5 / m
Eksempler:
ratelimit ()
def MyView (forespørsel):
& Nbsp; # Vil være sant hvis samme IP gjør mer enn fem forespørsler / minutt.
& Nbsp; was_limited = getattr (forespørsel, "begrenset", False)
& Nbsp; tilbake HttpResponse ()
ratelimit (blokk = True)
def MyView (forespørsel):
& Nbsp; # Hvis samme IP gjør> 5 reqs / min, vil returnere HttpResponseForbidden
& Nbsp; tilbake HttpResponse ()
ratelimit (felt = 'brukernavn')
def innlogging (forespørsel):
& Nbsp; # Hvis det samme brukernavnet eller IP brukes> 5 ganger / min, vil dette være sant.
& Nbsp; # Den `username` verdi vil komme fra GET eller POST, bestemmes av
& Nbsp; # forespørsel metoden.
& Nbsp; was_limited = getattr (forespørsel, "begrenset", False)
& Nbsp; tilbake HttpResponse ()
ratelimit (method = "POST")
def innlogging (forespørsel):
& Nbsp; # Kun gjelder hastighetsbegrensende på innlegg.
& Nbsp; tilbake HttpResponseRedirect ()
ratelimit (felt = ['brukernavn', 'other_field'])
def innlogging (forespørsel):
& nbsp; # Bruk flere feltverdier.
& Nbsp; tilbake HttpResponse ()
ratelimit (rente = '4 / h')
def treg (forespørsel):
& Nbsp; # Tillat 4 reqs / time.
& Nbsp; tilbake HttpResponse ()

Krav

  • Python
  • Django

Annen programvare fra utvikleren James Socol

django-waffle
django-waffle

20 Feb 15

Bleach
Bleach

1 Mar 15

django-adminplus
django-adminplus

20 Feb 15

Kommentarer til django-ratelimit

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!