Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Новая сессия из javascript и повторный вызов страницы / 4 сообщений из 4, страница 1 из 1
08.11.2012, 00:57
    #38029506
AEV
AEV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Новая сессия из javascript и повторный вызов страницы
Здравствуйте.
IIS 7, .net 4.5
Сайт работает в норме в IE. Из javascript вызывается страница get.aspx (аналог httphandler), в которой формируется бинарный файл для вывода в браузер (картинка, звук, не важно).

Есть такие проблемы:
1. При просмотре сайта с Android при срабатываении из javascript странице get.aspx Session Id становится новый, хотя сама сессия для остальных страниц при этом работает с ранее полученным Id.
2. При работе в Windows с Opera, Chrome get.aspx вызывается почему-то ровно 12 раз. Никаких предпосылок для этого нет.

Заранее спасибо.
...
Рейтинг: 0 / 0
08.11.2012, 08:37
    #38029629
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Новая сессия из javascript и повторный вызов страницы
Гадалки в отпусках. Сорцы в студию.
...
Рейтинг: 0 / 0
08.11.2012, 09:39
    #38029684
AEV
AEV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Новая сессия из javascript и повторный вызов страницы
:)

JavaScript:
var audio = document.getElementById("audio");
audio.src = "Get.aspx?V=" + "some.mp3";

Get.aspx:
Response.ClearHeaders();
Response.ClearContent();
Response.Clear();
Response.ContentType = "audio/mpeg";
Response.AddHeader("content-length", FileLength().ToString());
Response.AddHeader("Connection", "keep-alive");
Response.BufferOutput = true;

while (Response.IsClientConnected == true)
{
GetFile(ref FileBuffer);
if (FileBuffer != null)
{
ms = new MemoryStream(FileBuffer, 0, FileBuffer.Length, true);
if (Response.IsClientConnected == true)
{
ms.CopyTo(Response.OutputStream);
Response.Flush();
}
}
}
...
Рейтинг: 0 / 0
08.11.2012, 10:17
    #38029741
AEV
AEV
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Новая сессия из javascript и повторный вызов страницы
Небольшая коррекция кода Get.aspx (не то скопировал ранее сюда):
Get.aspx:
string filename=Request.QueryString["V"];
Response.ClearHeaders();
Response.ClearContent();
Response.Clear();
Response.ContentType = "audio/mpeg";
Response.AddHeader("content-length", FileLength(filename).ToString());
Response.AddHeader("Connection", "keep-alive");
Response.BufferOutput = true;

bool IsStopTransfer = false;
while (IsStopTransfer == false && Response.IsClientConnected == true)
{
IsStopTransfer = GetFile(filename,ref FileBuffer);
if (FileBuffer != null)
{
ms = new MemoryStream(FileBuffer, 0, FileBuffer.Length, true);
if (Response.IsClientConnected == true)
{
ms.CopyTo(Response.OutputStream);
Response.Flush();
}
}
}
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Новая сессия из javascript и повторный вызов страницы / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]