settings.py配置
1
2
3
4
5
6
7
8
9
10
|
'DEFAULT_THROTTLE_CLASSES' : (
'rest_framework.throttling.AnonRateThrottle' ,
'rest_framework.throttling.UserRateThrottle'
),
'DEFAULT_THROTTLE_RATES' : {
'anon' : '100/day' ,
'user' : '1000/day'
}
}
|
AnonRateThrottle:用户未登录请求限速,通过IP地址判断
UserRateThrottle:用户登陆后请求限速,通过token判断
DEFAULT_THROTTLE_RATES 包括 second, minute, hour, day
引用样例:
1
2
3
4
5
6
7
8
9
10
|
from rest_framework.response import Response
from rest_framework.throttling import UserRateThrottle
from rest_framework.views import APIView
class ExampleView(APIView):
throttle_classes = (UserRateThrottle,)
def get( self , request, format = None ):
content = {
'status' : 'request was permitted'
}
return Response(content)
|
总结
以上就是本文关于浅谈Django REST Framework限速的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!
原文链接:http://www.cnblogs.com/shhnwangjian/p/7691950.html