编辑:现在问题变成了,我如何告诉Sajax使用POST而不是GET?我试过谷歌的一些例子,但它们都是粗略的,正如我所说的,它们不起作用。我知道,我们这里都是jQuery迷。
我使用了以下代码,试图找到可以通过ajax调用发送到服务器的数据量的限制。显然,我们使用Sajax。在IE中,在大约1900个字符之后,数据不能通过,我们得到一个错误。在Firefox中,这一限制在6100左右,但似乎在每次调用时都会有所不同。这是依赖于浏览器的吗?
我还尝试使用POST而不是默认的get,并告诉Sajax使用POST根本不起作用。
在任何地方定义的AJAX中发送的数据流大小是否有限制?从经验上说呢?
<?
require('sites/includes/Sajax.inc.php');
function str_length_test($str){
return strlen($str);
}
sajax_init();
sajax_export('str_length_test');
sajax_handle_client_request();
?>
<html>
<head>
<title>Multiplier</title>
<script>
<? sajax_show_javascript(); ?>
function do_str_length_test_cb(pwd) {
document.getElementById('str_length').value = pwd;
}
function do_str_length_test() {
sample_field = document.getElementById('sample').value;
x_str_length_test(sample_field, do_str_length_test_cb);
}
</script>
</head>
<body>
<textarea id="sample" name="sample" rows=20 cols=60 onblur="do_str_length_test(); return false;"></textarea>
Size: <input type="text" id="str_length" name="str_length" value="" size=10>
</body>
</html>发布于 2009-01-26 21:21:23
GET在IE中限制为2083个字符,请参阅http://support.microsoft.com/kb/208427
有关url长度的讨论,请参阅here。
发布于 2009-01-26 23:46:02
我在sajax示例中看到了这一点:
$sajax_request_type = "GET";
sajax_init();
sajax_export("add_line", "refresh");
sajax_handle_client_request(); 我猜你只是把GET改成POST了。
$sajax_request_type = "POST";发布于 2009-01-26 20:54:57
如果您使用的是GET,则没有定义的限制。这取决于发出请求的浏览器和接收请求的服务器。
POST通常受到服务器的限制-我认为PHP的默认大小约为5MB。
https://stackoverflow.com/questions/481289
复制相似问题