Ведение сессии путем переписывания URL - PullRequest
1 голос
/ 23 июня 2011

Я занимаюсь разработкой библиотеки JavaScript, поддерживающей потоковую передачу HTTP и WebSocket, jQuery Stream .Я использовал XDomainRequest для выполнения потоковой передачи HTTP, когда браузером пользователя является IE8 +, но есть одна проблема.

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

Итак, я хочу знать , как переписать URL для поддержания сеанса пользователя в популярной серверной технологии, такой как .NET, PHP, Python и Ruby.

Например, в сервлете Java

/event-stream // by cookies
/event-stream;jsessionid=(The value of JSESSIONID contained in cookies) // by rewriting URL

Заранее спасибо.

1 Ответ

1 голос
/ 01 июля 2011

Java

/event-stream
/event-stream;jsessionid=(The value of JSESSIONID contained in cookies)

http://download.oracle.com/javaee/5/tutorial/doc/bnagm.html

PHP

/event-stream
/event-stream?PHPSESSID=(The value of PHPSESSID contained in cookies)

http://www.php.net/manual/en/session.idpassing.php

ASP.NET

/(app name)/event-stream
/(app name)/(S(The value of ASP.NET_SessionId contained in cookies))/event-stream/

http://msdn.microsoft.com/en-us/library/aa479315.aspx

Ruby on Rails и Django не позволяют передавать идентификатор сеанса!

Команда IE сообщила, что нет планов изменить это поведение (отправка куки).

...