我有一个注册页面。
在此页面上,PHP 后端根据表异步检查用户输入值。
我的问题是数据模型对象相当大;当有人进入页面(onload)时通过ajax启动 session 是否明智,它会缓存模型对象,以便来自该客户端的所有其他ajax请求最终不会在每次请求时重新创建数据模型对象。然后,当用户离开页面(onunload 或其他)时,将发送 ajax 请求并销毁 session 。
对我来说这似乎是个好主意,因为用户与表单交互所发出的每个异步请求都不会重新创建之前创建的所有对象。
这在实践中可行吗?
(有关我的担忧的详细信息,请参阅评论)
更新:
提出的主要问题是它将创建一个悬空 session 。是否可以通过在 session 中设置简单的 5 分钟超时来解决此问题?
最佳答案
对于任何想知道的人来说,这被证明是一个难以忍受的可怕想法。原则上没问题,但管理所有 session 并确保一切与前端保持同步几乎是不可能的,而且根本无法扩展,这反过来又使我的 Controller 结构变得如此复杂,以至于调试起来是一场噩梦(更不用说我了)每次更新开发仓库时都必须清除浏览器缓存..)。它浪费了我很多时间,让我错过了一些关键的最后期限,最终却付出了巨大的努力,而实际上的开销却很小。
请不要尝试这个。
关于php - ajax - 使用 onload 和 onunload 启动和结束 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16375483/