MyRateThrottle.py 662 B

123456789101112131415161718192021222324252627
  1. from rest_framework.throttling import SimpleRateThrottle
  2. class LoginRateThrottle(SimpleRateThrottle):
  3. scope = "login"
  4. def get_cache_key(self, request, view):
  5. return self.get_ident(request)
  6. class DeviceListRateThrottle(SimpleRateThrottle):
  7. scope = "devicelist"
  8. def get_cache_key(self, request, view):
  9. user = request.user
  10. uid = user["uid"]
  11. return uid
  12. class DeviceDetailRateThrottle(SimpleRateThrottle):
  13. scope = "devicedetail"
  14. def get_cache_key(self, request, view):
  15. user = request.user
  16. uid = user["uid"]
  17. deviceId = request.data.get("device_id")
  18. return uid + deviceId