Я отправляю запрос со страницы asp.net и затем жду ответа, вызывая GetCommand с помощью метода SetInterval:
function GetCommand(id, sid) {
getCommandResponse = $.ajax({
type: "POST",
async: true,
url: "../WebServices/TSMConsole.asmx/GetCommand",
data: "{'param' : '" + id + "', 'sid' : '" + sid + "'}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(result, status) {
AjaxFinishedGet(result, status);
getCommandResponse = null;
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
AjaxFailedGet(XMLHttpRequest, textStatus, errorThrown);
getCommandResponse = null;
}
});
}
В AjaxFinishedGet (результат, статус) я пытаюсь извлечь мои данные:
function AjaxFinishedGet(xml, status) {
endDate = new Date();
if (xml.d.IsPending == 'false' || endDate - startDate > timeoutMSec) {
if (getCommand != null) {
window.clearInterval(getCommand);
getCommand = null;
WriteGetCommand(xml.d.Text);
$("#showajax").fadeOut("fast");
}
}
}
Однако, если размер текста превышает 102330 байт - вместо AjaxFinishedGet вызывается AjaxFailedGet: (
Я не нашел никакой информации ни о каком-либо ограничении размера данных ответа ajax, ни о размере переменной javascript, по крайней мере такая переменная может без проблем хранить 1 МБ. На самом деле текст может содержать 1 МБ данных ...
Где проблема?