Можно ли разделить сеанс между браузерами с одного компьютера в рельсах? - PullRequest
1 голос
/ 01 апреля 2011

У меня есть сценарий, когда несколько пользователей используют мое приложение ruby-on-rails (rails версия 3+) для доступа к каналам XML.

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

Я не могу назначить сеансы на основе IP-адресов, потому что иногда несколько пользователей будут иметь один и тот же IP-адрес.

Есть ли способ поделиться сеансами, которые приходят с одного компьютера в рельсы?

Ответы [ 2 ]

2 голосов
/ 01 апреля 2011

Как насчет того, чтобы сделать что-то вроде:

  1. Пользователь получает канал из браузера => получает идентификатор сеанса "1234"
  2. Пользователь открывает настольное приложение
  3. Запросы к настольному приложениюпользователь «авторизует приложение» => генерирует уникальный токен в приложении "abcd"
  4. Настольное приложение открывает «авторизовать URL-адрес приложения» в браузере => `https://x.y/authorize?token=abcd
  5. Приложение Rails затем получает 1. текущий сеанс &2. токен
0 голосов
/ 01 апреля 2011

Я могу представить только IP-решение или вы можете попытаться выяснить MAC-адрес и сохранить его для каждого пользователя (зашифровано)

...