Django 站点范围的缓存,如果经过身份验证,请更改顶部



我有一个网站,无论您是否经过身份验证,大多数页面都是相同的。

如果用户经过身份验证,则删除"登录"按钮,并显示用户名。

在不破坏缓存的情况下更改此设置的最简单方法是什么?

我想我可以做一个 ajax 调用来从未缓存的页面获取用户名,并将用户名保存到本地存储。

但不确定如果用户未经过身份验证,则进行额外的服务器命中是否是一个好主意。如何在不破坏缓存的情况下检查用户是否已通过身份验证?

您可以从 Ajax 调用发出的请求中检查用户登录状态 - request.user.is_authenticated()。然后,如果用户经过身份验证,则返回用户名,并使用 Javascript 更新显示用户名的 DOM 部分。这应该不会以任何方式影响您的缓存。

相关内容

最新更新