9.DRF组件之限流和过滤

一、 限流

        DRF在高并发的情况下,为了保护服务器的稳定性,需要对API进行限流,以控制请求的流量。DRF提供了多种限流过滤器,可以根据不同的需求进行配置

常见的DRF限流过滤器包括:

  • AnonRateThrottle:匿名用户请求速率限制
  • UserRateThrottle:已登录用户请求速率限制

      这些限流过滤器可以通过在settings.py中配置REST_FRAMEWORK的DEFAULT_THROTTLE_CLASSESDEFAULT_THROTTLE_RATES来启用和配置。例如:

REST_FRAMEWORK = {
    'DEFAULT_THROTTLE_CLASSES': [
        'rest_framework.throttling.AnonRateThrottle',  # 匿名用户
        'rest_framework.throttling.UserRateThrottle',  # 已认证用户
    ],
    'DEFAULT_THROTTLE_RATES': {
        'anon': '5/second', # 匿名用户在一秒内连续超过5次后接口会返回   "detail": "Request was throttled. Expected available in 1 second."
        'user': '10/second',
    },
}

 

二、过滤

        过滤是指在 API 请求中对数据进行筛选或过滤,以返回符合条件的

你可能感兴趣的:(后端,django)