我正在用Django建立一个处理敏感数据的网站。我的网站有一个注销按钮,用于注销用户并将浏览器重定向到登录页面。使用Safari 14.1.1版时,我可以在注销后单击浏览器中的“后退”按钮,并返回到包含私人数据的上一页。据我所知,这似乎不是Django的问题,而是Safari存储内容,因此它不必向服务器发出另一个请求。我尝试了几种停止缓存的方法,包括:
@cache_control(no_cache=True, must_revalidate=True, no_store=True)
def some_method(request):
#do some stuff
以及:
@never_cache
def some_method(request):
#do some stuff
最后,我尝试使用以下命令手动更改请求头:
response["Cache-Control"] = "no-cache, no-store, must-revalidate"
response["Pragma"] = "no-cache"
response["Expires"] = "0"
另外,我的视图用@login_required(redirect_field_name="/somelink")
注释。
我的一些研究表明,这可能不是缓存问题,而是浏览器历史问题,但我不确定。同样值得一提的是,Chrome没有给我任何问题,当我在注销后单击后退按钮时,它不会显示前一个用户正在查看的内容。在Safari中注销后如何禁用浏览器后退按钮?提前谢谢
目前没有回答
相关问题 更多 >
编程相关推荐