Совместное использование сеанса веб-приложения с веб-сервисом - PullRequest
4 голосов
/ 20 марта 2012

Окружающая среда:

У нас есть веб-сайт и отдельная ASMX - веб-служба , совместно использующая одну и ту же базу данных (MS SQL 2008). В настоящее время веб-служба обслуживает мобильные приложения. Проекты выполняются с использованием c #, Asp.Net, 3.5 framework, VS 2008.

Требования:

Нам необходимо избегать одновременного входа одного и того же пользователя на веб-сайт и в мобильное приложение (используя веб-службу). По сути, пользователь может войти только в один сервис за один раз (веб или приложение). Кроме того, пользователь должен иметь возможность войти в мобильное приложение, как только веб-браузер закроется или выйдет из системы.

Если пользователь пытается войти, когда уже вошел в другую службу, код должен иметь способ найти его для целей уведомления и ограничения.

Я думаю, AppFabrc отвечает требованиям, но нуждается в Windows Server 2008 R2, которого у нас нет на данный момент.

Надеюсь, у вас есть лучшие идеи?

Обратите внимание, что это не тот же вопрос, что и это .

Ответы [ 2 ]

0 голосов
/ 21 марта 2012

Как уже упоминали другие, нет простого способа узнать, когда кто-то закрыл браузер.Вы можете использовать javascript, чтобы определить, когда кто-то покидает ваше веб-приложение, но есть некоторые проблемы (см. Следующий вопрос и ответы для получения дополнительной информации: Как записать событие закрытия окна браузера? )

Если вы открыты для других рабочих процессов, вы можете попробовать это:

  • Когда пользователь входит в мобильное приложение, попросите мобильное приложение выйти из него с веб-сайта.
  • Когда пользователь входит на веб-сайт, попросите его выйти из мобильного приложения.

Таким образом, ваши пользователи могли бы сразу войти в систему и начать работать вместо того, чтобы им приходилось входить в систему, видеть ошибку, выходить из другого приложения, регистрироваться снова.

0 голосов
/ 21 марта 2012

К вашему сведению ... вы не получите никакого уведомления при закрытии браузера.Вы можете перейти на основе последнего времени активности (в основном отслеживать активность пользователя - клики на странице и т. Д.).Я также не понимаю, как appFabric поможет.У вас все еще та же проблема.

...