python

超轻量级php框架startmvc

浅谈Django REST Framework限速

更新时间:2020-05-13 09:00:01 作者:startmvc
官方文档settings.py配置REST_FRAMEWORK={'DEFAULT_THROTTLE_CLASSES':('rest_framework.throttling.AnonRateThrottle','r

官方文档

settings.py配置


REST_FRAMEWORK = {
 '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

引用样例:


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限速的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

django framework django rest framework rest framework 文档