Pol*_*her 2 django caching google-chrome login-required
::编辑::
@cache_control(no_cache=True, must_revalidate=True, no_store=True) FTW !!!!!
缓存控制:无缓存,无存储,必须重新验证就可以了.它花了几个IRC chans并环顾四周,但最后我开始工作了.
::编辑::
我有一个视图,我在其上设置@login_required并且大部分都是安全的,但如果您查看了视图然后注销,只需点击浏览器中的后退按钮即可再次查看内容而不会被问到登录.虽然如果您刷新页面,服务器将重定向您.
我的暂停是一个缓存问题,我可能需要告诉chrome不要将它存储在历史记录中.
如果您查看发票,然后注销,则可以通过在后面的历史记录中选择该页面来再次查看发票.
我试过这个问题o firefox没问题.firefox请求您回退结束,因此它必须是浏览器问题.
你是对的,这是缓存问题.
您可以使用cache_control装饰器强制视图上没有缓存[1]:
from django.views.decorators.cache import cache_control
@cache_control(no_cache=True, must_revalidate=True, no_store=True)
def func()
#some code
return
Run Code Online (Sandbox Code Playgroud)
您还应该编写自己的装饰器替换,@login_required这样您就不需要在每个页面上都使用它们.
[1] 注销后禁用浏览器"后退"按钮?
| 归档时间: |
|
| 查看次数: |
2687 次 |
| 最近记录: |