如何prevent从具有相同的Web应用程序的多个实例的用户 [英] How to prevent a user from having multiple instances of the Same Web application

查看:91
本文介绍了如何prevent从具有相同的Web应用程序的多个实例的用户的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不知道是否有可能确定一个用户已经有一个Web浏览器开到我工作的Web应用程序。看来,他们可以打开同一个Web应用程序的多个实例,然后点击按钮来读取信息,他们之前使用进入的输入屏幕,他们目前正在努力。

会发生什么事是,虽然它似乎搞砸了Session变量,然后用户将更新他们的新工作中的previous工作。否则将删除其previous所有工作在一起,或谁知道...

修改
我已经看到了这网上银行Web应用程序之前完成。如果您已经登录,新的窗口会亲切的告诉你,你已经拥有的应用程序打开。在我的情况下,用户不需要登录。

有一个简单的方法,以确定他们是否已经有一个浏览器窗口打开到Web应用程序,如果是这样,只需关闭浏览器或显示不同的页面,让他们知道,他们只能有1一次打开<? / p>

感谢


解决方案

首先,没有没有,其次,你不应该尝试。

在弹出窗口的策略将无法正常工作(并会惹恼用户)。我有我的浏览器设置为打开的窗口为标签,而 I 的选择是否拆分一关到另一扇窗。或在某些情况下,是否到运行不同浏览器 - 不仅仅是同一个的另一个实例 - 在同一网站上显示另一页

相反,微型会话ID将失败,因为服务器不能保持跟踪一个请求是否来自相同的用户的作为现有会话。一些人可能会使用同一台机器,即使是相同的用户名;或者一个人可能有多个不同的登录会话,在一个或几台机器。

刚刚整理出您的协议与会话变量,并确保在最后提交的变化是坚持的人。

I'm wondering if it is possible to determine if a user already has a web browser open to the web application I'm working on. It seems that they can open several instances of the same web app and click on buttons to read information that they have used before to enter into an input screen that they're currently working on.

What happens though is that it seems to screw up Session variables and then the user will update their previous work with their new work. Or they will delete their previous work all together or who knows...

EDIT I have seen this done before with online banking web applications. If you are already logged in, the new window will kindly tell you that you already have the app open. In my case, the user does not need to log in.

Is there a simple way to determine if they already have a browser window open to the web application and if so, just close the browser or display a different page to let them know they can only have 1 open at a time?

Thanks

解决方案

Firstly, no there isn't, and secondly, you shouldn't try.

The pop-up window strategy won't work (and will annoy users). I have my browser set to 'Open windows as Tabs', and I choose whether to split one off into another window. Or in some cases, whether to run a different browser -- not just another instance of the same one -- to display another page on the same site.

Conversely, the mini-session ID will fail because the server can't keep track of whether a request is from the same user as an existing session. Several people may be using the same machine, even with the same username; or one person may have several separate login sessions, on one or several machines.

Just sort out your protocol vs. 'Session' variables and make sure that the last committed changes are the ones that persist.

这篇关于如何prevent从具有相同的Web应用程序的多个实例的用户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆