标签:user efault 视图 rom default 使用 配置文件 文件中 区分
1) AnonRateThrottle
限制所有匿名未认证用户,使用IP区分用户。
使用DEFAULT_THROTTLE_RATES[‘anon‘]
来设置频次
2)UserRateThrottle
限制认证用户,使用User id 来区分。
使用DEFAULT_THROTTLE_RATES[‘user‘]
来设置频次
3)ScopedRateThrottle (待定...)
限制用户对于每个视图的访问频次,使用ip或user id,先找的用户id,没有设置用户id的话就会使用ip地址。
可以在配置文件中
REST_FRAMEWORK = { ‘DEFAULT_THROTTLE_CLASSES‘: ( ), ‘DEFAULT_THROTTLE_RATES‘: { ‘anon‘: ‘100/day‘, ‘user‘: ‘1000/day‘ } }
DEFAULT_THROTTLE_RATES 可以使用 second
, minute
, hour
或day
来指明周期。
也可以在具体视图中通过throttle_classess属性来配置,但是要注掉settings里的‘DEFAULT_THROTTLE_CLASSES‘,如
`from rest_framework.throttling import ScopedRateThrottle
from rest_framework.views import APIView
class ExampleView(APIView):
throttle_classes = [ScopedRateThrottle ,]
throttle_scope = ‘anon‘
...`
标签:user efault 视图 rom default 使用 配置文件 文件中 区分
原文地址:https://www.cnblogs.com/freedom0923/p/13032157.html