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