python - 识别 Django Rest Framework 中的唯一匿名用户

标签 python django django-rest-framework throttling

我在 Rest api 中应用 throttle 。对于注册用户,它工作正常,但对于匿名用户,我无法 100% 确定地识别唯一用户。

Django Rest Framework 使用 http header 中的 HTTP_X_FORWARDED_FORREMOTE_ADDR 根据 IP 地址识别匿名用户。但它将唯一 NAT 后面的所有客户端视为单个客户端。

那么识别唯一匿名用户以便适当限制 API 的可靠方法是什么?

最佳答案

我认为您可以使用 sessions 来解决这个问题,这是您可以用于跟踪的唯一匿名用户字段。

session 基于 cookie,因此当您的匿名用户返回您的应用程序时,如果 cookie 仍然有效,您将能够为用户检索正确的 session 。

我认为此链接会有所帮助:Django storing anonymous user data

关于python - 识别 Django Rest Framework 中的唯一匿名用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33172454/

相关文章:

python - Django 在 ModelForm 的 "other"模型上包含 ManyToManyField

python - Django rest框架ListApiView慢查询

Python C 程序子进程在 "for line in iter"处挂起

python - 什么异常类用于文件解析错误?

python - 为什么我不能在条件表达式中放入切片,我该怎么办?

python - Django 国际化 - Gettext 错误

python - Django 表单验证包括 session 数据的使用

django - CORS 和 JWT 有什么区别

django-rest-framework - 如何在 Django Rest Framework 3 中覆盖 ModelViewSet 的 get_queryset?

python - PYMC3:NUTS 难以从分层零膨胀 Gamma 模型中采样