我正在使用CodeIgniter来构建应用程序。 该应用程序在setTimeoutInterval上有许多AJAX请求,每隔几秒就会触发一次。
现在的情况是: 如果用户的页面保持打开状态。该页面每隔一段时间发送一次Ajax请求。 那时我已经在服务器上更新了我的应用程序。
所以我想保留一个版本检查,通知用户该应用程序是否已在此期间升级。
我正在使用CodeIgniter来构建此应用程序。
我正在扭动一个“post_controller”钩子,它将检查请求标题中的版本和应用程序中的当前版本。如果出了什么问题。它将发送版本不匹配响应并退出。
现在我能够做所有事情,但无法阻止进一步处理。如果我在这种特殊情况下给出exit(),则不会发送视图响应。
我可以使用简单的echo / print。但是,如果我给出die()/ exit,则CodeIgniter视图不会发送响应。
答案 0 :(得分:1)
“现在我可以做所有事情,但不能停止进一步处理。如果我在这种特殊情况下给出exit(),则不会发送视图响应。
我可以使用简单的echo / print。但是,如果我给出die()/ exit,则CodeIgniter视图不会发送响应。“
您不清楚在版本不匹配时要做什么 - 退出或发送回复?只需退出('NEW_VERSION_AVAILABLE'),在JS代码中检测到该响应,然后重新加载页面。
如果你想要完全忽略请求,你应该在pre_controller钩子中做同样的事情。
答案 1 :(得分:0)
不确定它会起作用,只是把它扔出去:
是否可以将您的不匹配检测传递给您的AJAX函数,然后调用javascript window.location重定向到标准的“版本更新”错误页面?
答案 2 :(得分:0)
由于codeigniter会在数据库中存储会话,因此您在更新服务器时始终可以知道谁与应用程序连接。
何时进行版本验证:
更新系统时:
此致 佩德罗