Skip to main content
 首页 » 编程设计

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

2024年10月24日32zlslch

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

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

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

请您参考如下方法:

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

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

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