XMLHttpRequest POST数据大小

时间:2010-06-18 11:57:14

标签: post size xmlhttprequest

XHR POST请求是否有大小限制?我正在使用POST方法使用PHP脚本将textdata保存到MySQL中,并且数据被截断。 Firebug发给我以下信息:

... Firebug request size limit has been reached by Firebug. ... 

这是我发送数据的代码:

function makeXHR(recordData)
{
    xmlhttp = createXHR();

    var body = "q=" + encodeURIComponent(recordData);

    xmlhttp.open("POST", "insertRowData.php", true);
    xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlhttp.setRequestHeader("Content-length", body.length);
    xmlhttp.setRequestHeader("Connection", "close");

    xmlhttp.onreadystatechange = function() 
    {
        if(xmlhttp.readyState == 4 && xmlhttp.status == 200) 
        {
            //alert(xmlhttp.responseText);
            alert("Records were saved successfully!");
        }
    }
    xmlhttp.send(body);

}

我能想到的唯一解决方案是拆分数据并建立XHR请求队列,但我不喜欢它。还有另一种方式吗?

1 个答案:

答案 0 :(得分:1)

XHR Post没有大小限制,但您正在向PHP发送数据,该数据有大小限制;) 创建以下php文件并在浏览器中打开它:

<?php phinfo(); ?>

现在搜索变量“post_max_size”,这个变量限制了可以发送到PHP的最大数据(但可以在php.ini中更改)