身份验证站点中的Django缓存:最佳做法

问题描述 投票:0回答:1

我需要将memcached添加到我的django网站。 这是一个经过身份验证的网站,不同的用户在同一页面上看到不同的数据。 哪些是最佳做法? 我的意思是,为了避免用户看到彼此缓存的页面(信息泄漏)...

我想我应该使用类似的东西:

{% load cache %}
{% cache 500 sidebar request.user.username %}
    .. sidebar for logged in user ..
{% endcache %}

要么:

@vary_on_cookie
def my_view(request):
    # ..

哪个是最安全,更好的方法?

python django caching memcached
1个回答
1
投票

根本不是同一回事, {% cache %}模板标记允许缓存模板片段,该片段由服务器使用, @vary_on_cookie装饰器将Vary响应标头设置为Cookie,浏览器使用。

另外,您可以执行{% cache 500 sidebar request.user %}而不指定用户名。

© www.soinside.com 2019 - 2024. All rights reserved.