جانغو-ratelimit هو التطبيق جانغو الذي يوفر الديكور لتقيم الحد وجهات النظر على & nbsp؛ الحد يمكن استنادا إلى عنوان IP أو حقل في الطلب - إما GET أو POST متغير.
إذا تم اكسسيديد الحد حال، إما 403 محظور يمكن إرسالها، أو يمكن المشروح الطلب مع سمة محدودة، مما يسمح لك لاتخاذ إجراءات أخرى مثل إضافة كلمة التحقق إلى نموذج.
باستخدام جانغو Ratelimit
من ratelimit.decorators ratelimit استيراد هو أهم شيء عليك القيام به. يوفر الديكورratelimit عدة حجج اختياري مع الافتراضات المعقولة (بخط مائل).
الملكية الفكرية: سواء لتقيم الحد على أساس IP. صحيح
كتلة: سواء لمنع الطلب بدلا من التأشير. زائف
الأسلوب: الأسلوب الذي HTTP (ق) إلى معدل الحد. قد تكون سلسلة أو قائمة. كل
الملعب: أي حقل HTTP (ق) لاستخدامه في معدل الحد. قد تكون سلسلة أو قائمة. لا شيء
معدل: عدد الطلبات في وحدة الزمن المسموح بها. 5 / م
الأمثلة على ذلك:
ratelimit ()
MYVIEW مواطنه (طلب):
على & nbsp؛ # هل يكون صحيحا إذا كان نفس IP يجعل أكثر من 5 طلبات / دقيقة.
على & nbsp؛ was_limited = getattr (طلب، 'محدودة'، خطأ)
على & nbsp؛ العودة HttpResponse ()
ratelimit (كتلة = صحيح)
MYVIEW مواطنه (طلب):
على & nbsp؛ # إذا نفس IP يجعل> 5 reqs / دقيقة، وسوف يعود HttpResponseForbidden
على & nbsp؛ العودة HttpResponse ()
ratelimit (حقل = "اسم المستخدم")
تسجيل الدخول مواطنه (طلب):
على & nbsp؛ # إذا نفس اسم المستخدم أو يستخدم IP> 5 مرات / دقيقة، وسيكون هذا صحيح.
على & nbsp؛ # سيأتي القيمة `username` من GET أو POST، يحددها
على & nbsp؛ # طريقة الطلب.
على & nbsp؛ was_limited = getattr (طلب، 'محدودة'، خطأ)
على & nbsp؛ العودة HttpResponse ()
ratelimit (أسلوب = 'مشاركة')
تسجيل الدخول مواطنه (طلب):
على & nbsp؛ # تنطبق فقط على المشاركات معدل الحد.
على & nbsp؛ العودة HttpResponseRedirect ()
ratelimit (حقل = ['اسم المستخدم'، 'other_field'])
تسجيل الدخول مواطنه (طلب):
وعنبسة، والقيم حقل متعددة # استخدام.
على & nbsp؛ العودة HttpResponse ()
ratelimit (= نسبة "4 / ح ')
بطء مواطنه (طلب):
على & nbsp؛ # السماح 4 reqs / ساعة.
على & nbsp؛ العودة HttpResponse ()
المتطلبات:
بيثون
جانغو
لم يتم العثور على التعليقات