Длина Max отправляет () параметрический усилитель данных на Сообщении XMLHttpRequest

Есть ли зарегистрированный макс. к длине строковых данных, которые можно использовать в отправить методе XMLHttpRequest для основных реализаций браузера?

Я сталкиваюсь с проблемой с JavaScript XMLHttpRequest Сообщение, переставшее работать в FireFox 3, когда данные закончены приблизительно 3k. Я принимал Должность, будет вести себя то же как стандартное Сообщение Формы.

Документы W3C упоминают, что параметрический усилитель данных отправить метода является DOMString, но я не уверен как главная реализация браузеров это.

Вот упрощенная версия моего JavaScript, если bigText закончен приблизительно 3k, это перестало работать, иначе это работает...

var xhReq = createXMLHttpRequest();

function createXMLHttpRequest() {
  try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
  try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
  try { return new XMLHttpRequest(); } catch(e) {}
  alert("XMLHttpRequest not supported");
  return null;
}

function mySubmit(id, bigText) {
  var url    = "SubmitPost.cfm";
  var params = "id=" + id + "&bigtext=" + encodeURI(bigText);

  xhReq.open("POST", url, true);

  //Send the header information along with the request
  xhReq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  xhReq.setRequestHeader("Content-length", params.length);
  xhReq.setRequestHeader("Connection", "close");

  xhReq.onreadystatechange = onPostSubmit;
  xhReq.send(params);
}

function onPostSubmit() {

  if (xhReq.readyState==4 || xhReq.readyState=="complete")
     { 
     if (xhReq.status != 200)
        {
        alert('BadStatus');
        return;
        }
    } 
}
9
задан geisterfurz007 Stop this chaos 21 October 2019 в 07:14
поделиться

3 ответа

Я полагаю, что максимальная длина зависит не только от браузера, но также и от веб-сервера. Например, Apache, сервер HTTP имеет директиву LimitRequestBody, которая позволяет где угодно от 0 байтов до ценности на 2 ГБ данных.

5
ответ дан 4 December 2019 в 21:52
поделиться

Согласно спецификации XMLRPC, единственные реальные пределы находятся на размере целых чисел, и удваивается.

2
ответ дан 4 December 2019 в 21:52
поделиться

Вы не указываете, как это перестало работать однако, Ваше кодирование является неправильным. Необходимо использовать encodeURIComponent не encodeURI.

Примите значение по умолчанию максимальный размер тела объекта запроса на клиенте, вероятно, только ограничен доступной памятью. Сервер, как был уже указан, может отклонить тела объекта свыше определенного размера. IIS 6 и 7, например, имеет предел значения по умолчанию 200 КБ.

2
ответ дан 4 December 2019 в 21:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: