Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.04.2012, 14:42
Аспирант
Отправить личное сообщение для abstract Посмотреть профиль Найти все сообщения от abstract
 
Регистрация: 20.09.2010
Сообщений: 58

Машины за NATом путаются сессии
Странная вещь происходит.
Есть две машины клиенты за NATом, есть сервер tomcat6, контроль сессии осуществляется посредством объекта HttpSession. И вот какая ерунда происходит:
Данные отправленные первым пользователем заносятся в базу с идентификаторами второго.
Как запрограммировано:
Пользователь (Объект java) User хранится в объекте HttpSession. С клиента через AJAX отправляются данные без id пользователя или иных идентификаторов.
Данные получает сервлет, извлекает из объекта session объект user (в нем поле id) и кладет эти данные с его id в базу.
Ответить с цитированием
  #2 (permalink)  
Старый 06.04.2012, 14:44
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сессия к юзеру как привязывается?
Ответить с цитированием
  #3 (permalink)  
Старый 06.04.2012, 14:53
Аспирант
Отправить личное сообщение для abstract Посмотреть профиль Найти все сообщения от abstract
 
Регистрация: 20.09.2010
Сообщений: 58

Пользователь на странице вводит логин-пароль-> сервелет проверяет в базе, если пароль логин есть, создает объект User (поля: id, name и тд) потом HttpSession session= request.getSession(); session.putAttribute("user",User) Ну потом каждый раз при запросе session= request.getSession(); а потом извлекаю пользователя и беру его id.
Ответить с цитированием
  #4 (permalink)  
Старый 06.04.2012, 15:01
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Это всё прекрасно. А сессия к юзеру как привязывается? На более низком уровне: по куке, по айпишнику, еще как?
Выглядит, что по айпишнику, а лучше бы по куке.
Ответить с цитированием
  #5 (permalink)  
Старый 06.04.2012, 15:06
Аспирант
Отправить личное сообщение для abstract Посмотреть профиль Найти все сообщения от abstract
 
Регистрация: 20.09.2010
Сообщений: 58

Нет, ну естественно по куки. Контроль сессии при помощи HttpSession осуществляется по куки Вот расшифровка запроса от клиента (клиент был тут я):
host=localhost:8080
user-agent=Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:11.0) Gecko/20100101 Firefox/11.0
accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
accept-language=en-us,en;q=0.5
accept-encoding=gzip, deflate
connection=keep-alive
referer=http://localhost:8080/TESTPROG/
cookie=JSESSIONID=2D1CA46027B2C516577DC7C842E3CC58
content-type=application/x-www-form-urlencoded
content-length=50

Последний раз редактировалось abstract, 06.04.2012 в 15:38.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax добавление в массив сессии kiff86 AJAX и COMET 0 29.10.2011 11:48
Сессии в AJAX Despod AJAX и COMET 4 03.08.2010 15:03