Открытие нового окна браузера с новым идентификатором сеанса в ASP.NET - PullRequest
6 голосов
/ 15 апреля 2010

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

Открыть новое окно браузера со страницы ASP.NET легко, но затем он использует тот же файл cookie и, таким образом, session ID с оригиналом.

Как я могу это сделать?

Ответы [ 3 ]

6 голосов
/ 15 апреля 2010

Это ограничение браузера - экземпляры браузеров обмениваются данными cookie (включая cookie сеанса), когда они работают, поэтому это невозможно с вашим стандартным браузером.

Если у вас есть возможность использовать разные браузеры (например, IE и Firefox), они не будут использовать файлы cookie и будут иметь разные сессии.

Edit:

Если у вас есть контроль над заголовками узлов IIS и DNS в вашей среде, вы можете использовать много разных доменных имен - по одному на сеанс.

Браузер будет обрабатывать каждое доменное имя как отдельный сервер, и будут создаваться разные файлы cookie (и, следовательно, сеансы).

3 голосов
/ 15 апреля 2010

В IE вы должны использовать File - New Session или есть раздел реестра, который вы можете установить для вкладок / сессий. Ваши вкладки будут менять цвет, показывая, какой сеанс вы используете.

0 голосов
/ 15 апреля 2010

Я не думаю, что есть способ сделать это, потому что Cookies хранятся на уровне браузера - как бы много окон вы ни открывали, у вас все равно будет тот же Cookie, и, следовательно, тот же сеанс.

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

edit: В зависимости от ваших обстоятельств, один из способов достижения того, чего вы пытаетесь достичь, может состоять в том, чтобы иметь несколько разных доменных имен / URL, которые все указывают на один и тот же сайт ASP.NET, что позволит вам сохранять куки и сеансы раздельные. Но если вам нужно более 2 или 3 сеансов на браузер, это будет глупо.

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