2009-11-18 45 views

回答

48

这取决于您发送表单的方法。

对于GET,根据浏览器和服务器的限制,通常约定的限制为1-2千字节。

使用POST时,浏览器没有技术限制,但通常在服务器端有一个限制 - 请参阅Apache的LimitRequestBody,PHP的post_max_size等等。

+0

请注意以下@naugtur针对文本输入字段指出的问题 - 至少对于那些有不同浏览器施加的技术限制的问题。 – Oliver

+0

我刚刚在3款当前的浏览器(IE9,FF 10 ESR,Chrome 24)上运行了一些测试,它们都提交了100KB的隐藏输入值,没有任何问题。所以文本输入的问题似乎并不适用于此。 – Oliver

+0

'textarea's怎么样? –

27

警告!当文字长度大于65535(最大符号诠释大小)时,我遇到过<input type="text">的问题

粘贴文本似乎会导致内容出现一些奇怪的溢出。发现在webkit中。

[编辑]

GET请求的大小不完全限于佩卡写的方式。 整个GET查询字符串的限制为2083个字节address?params仅限Internet Explorer 在其他浏览器中,实际上没有限制,例如FireFox发送超过100KB的GET查询。显然,服务器必须允许这些。

它没有包含在文档中,所以必须测试它以了解其他浏览器的限制。 IE:http://support.microsoft.com/kb/208427

+2

+1浏览器将截断输入字段。 – goat

+8

+1我已经创建了这个jsFiddle来测试将输入值设置为一个很长的字符串时会发生什么:http://jsfiddle.net/3TVPL/6/我已经使用了一个字符串长度为65537的字符。在我的测试中,Crome 24.0.1312和Safari 5.1.7 for Windows在将值设置为该字符串后都显示输入框为空。如果我将字符串缩小为65536个字符,Chrome会显示正确的非空值。其他浏览器(Firefox 17,IE8,IE9,IE10,Opera 12.12)甚至在使用字符串时也没有任何问题(我上传了大约1.2 Mb的字符串) – beluga

+0

@beluga伟大的工作。有关绩效的任何想法?在我虚弱的机器上,这是一个漫长的等待。我想这就是为什么webkit不渲染。 – naugtur

相关问题