是否可以在Django请求中检测用户的浏览器刷新?
答案 0 :(得分:2)
我自己认为,仅通过查看请求对象就无法知道页面是否已刷新。客户端可以轻松打开页面的第二个版本。您还必须保留一些有关所有请求的状态数据,以便比较时间戳等内容,但这只是对实际发生的事情的假设......
你可能做的是结合检查django中的请求和一些javascript魔法。原因是客户端是唯一真正知道页面刷新是否正在发生的人,并且必须记录此操作的某些状态。这里有一个快速搜索这个小教程:Detecting Page Refreshes :: Using JavaScript on Client-Side。它捕获页面卸载并设置cookie值,然后检查下一次重新加载。您可以使用该方法的一部分来设置cookie,然后检查django视图中的request.cookies以查看该请求是否记录了页面重新加载事件。
*注意:我链接的javascript页面有点旧,但信息仍然相关。这是similar SO question