ASP.Net SessionID сохраняются при открытии нового браузера - PullRequest
0 голосов
/ 31 мая 2011

У меня есть меню Развернуть / Свернуть Javascript.При открытии нового окна создается файл cookie сеанса для поддержания состояний меню (т. Е. Развернутого или свернутого).

1. Если мы открываем какой-либо узел меню. Он сохраняет их состояния в файле cookie.

2.Но когда мы открываем новое окно браузера, то новый сеанс не выполняется, он получает предыдущий сеанс, из-за этого меню по-прежнему отображается развернутым.

3.Но тогда мы закрываем весь браузерон работает нормально, он создает новую сессию в этом случае.

Мне нужно открыть второе окно или вкладку браузера, но у него должен быть другой SessionID.Открыть новое окно браузера со страницы ASP.NET легко, но затем он использует тот же файл cookie и, следовательно, SessionID с оригиналом.Как я могу это сделать?

Спасибо за помощь,

Jaydeep

Ответы [ 3 ]

2 голосов
/ 31 мая 2011

Насколько я понимаю, вы не должны использовать идентификатор сессии для логики отображения меню в вашей форме.Вместо этого вы можете просто использовать скрытое значение поля или значение строки запроса.

1 голос
/ 31 мая 2011

Мне нужно открыть второе окно или вкладку браузера, но у него должен быть другой SessionID

Извините, но этого невозможно достичь. Вот как работают браузеры, и вы не можете контролировать это поведение. Возьмем, к примеру, gmail: вы входите в свою учетную запись, а затем открываете другую вкладку / окно браузера, и вы все равно будете входить в систему, поскольку файлы cookie используются совместно для вкладок / окон.

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

0 голосов
/ 31 мая 2011

Чтобы получить возможность использовать разные сеансы на разных вкладках браузера, вы можете использовать сеансы без файлов cookie.Вы можете прочитать о MSDN .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...