Mat*_*mer 5 javascript internet-explorer comet lift
所以,我遇到了一个奇怪的问题,我希望有一些IE专家能够对这种行为有所了解.我的公司运行一个实时的Lift应用程序.我们使用彗星模型在浏览器和服务器之间进行实时通信,这是Lift的标准配置.另外值得注意的是:如果彗星与服务器不同步(由于连接问题或服务器重启,任何会导致服务器上的会话中断的事情)服务器响应该彗星请求,document.location.reload();
并重新加载页面,启动一个新的会话,等等.
现在,为了确保注销按预期发生,我们有一个特殊的URL(/ session/logout),可以完成所有与会话相关的清理,然后将您踢回我们的主页.这可以通过单击该URL的锚点来触发,或者如果您尝试执行需要注销的操作,服务器可能会向您发出302该URL.很简单吧?在大多数浏览器中,这很有用,因为工作流看起来像这样:
但是,在IE中我们看到以下行为:
document.location.reload();
从服务器接收a ,因为它们从未被IE关闭,主页的加载被中止,并且当前页面在没有用户登录的情况下重新加载.这是完全不合需要的,因为我们需要加载/ session/logout的正确结果 - 特别是在用户尝试执行他们登录时无法执行的操作的情况下(在这种情况下,302从注销将指向他们最初试图去的地方).
以前有没有人遇到过这种问题?关于如何处理这个问题的任何建议?
归档时间: |
|
查看次数: |
189 次 |
最近记录: |