TI中文支持网
TI专业的中文技术问题搜集分享网站

请教下,http_server中get的data长度限制,如何加长。

据测,get的数据长度只有64byte,再长就显示unknow token了,但看文档应该是255byte,怎么回事,如何扩展,希望能达到1k。

gaoyang9992006:

1. Get方法长度限制Http Get方法提交的数据大小长度并没有限制,HTTP协议规范没有对URL长度进行限制。这个限制是特定的浏览器及服务器对它的限制。如:IE对URL长度的限制是2083字节(2K+35)。下面就是对各种浏览器和服务器的最大处理能力做一些说明.Microsoft Internet Explorer (Browser)IE浏览器对URL的最大限制为2083个字符,如果超过这个数字,提交按钮没有任何反应。Firefox (Browser)对于Firefox浏览器URL的长度限制为65,536个字符。Safari (Browser)URL最大长度限制为 80,000个字符。Opera (Browser)URL最大长度限制为190,000个字符。Google (chrome)URL最大长度限制为8182个字符。Apache (Server)能接受最大url长度为8,192个字符。Microsoft Internet Information Server(IIS)能接受最大url的长度为16,384个字符。通过上面的数据可知,为了让所有的用户都能正常浏览, URL最好不要超过IE的最大长度限制(2083个字符),当然,如果URL不直接提供给用户,而是提供给程序调用,这时的长度就只受Web服务器影响了。注:对于中文的传递,最终会为urlencode后的编码形式进行传递,如果浏览器的编码为UTF8的话,一个汉字最终编码后的字符长度为9个字符。因此如果使用的 GET 方法,最大长度等于URL最大长度减去实际路径中的字符数。2. POST方法长度限制理论上讲,POST是没有大小限制的。HTTP协议规范也没有进行大小限制,起限制作用的是服务器的处理程序的处理能力。如:在Tomcat下取消POST大小的限制(Tomcat默认2M);打开tomcat目录下的conf目录,打开server.xml 文件,修改debug="0"acceptCount="100"connectionTimeout="20000"disableUploadTimeout="true"port="8080"redirectPort="8443"enableLookups="false"minSpareThreads="25"maxSpareThreads="75"maxThreads="150"maxPostSize="0"URIEncoding="GBK"> 增加红色字体部分 maxPostSize="0" (设为0是取消POST的大小限制)

liang shen2:

回复 gaoyang9992006:

谢谢你,不过这不是答案,是我表述不清楚,c3100的sdk中限制了,在netapp.c文件中,但是限制点我没找到,无法修改。应该不是明码.

Yonghua Pan:

回复 liang shen2:

请问你在哪里看到说是256个字节,能否告诉我一下。

liang shen2:

回复 Yonghua Pan:

typedef union

{

slHttpServerString_t token_value; /* < 64 bytes*/

} SlHttpServerResponsedata_u;

typedef struct _slHttpServerString_t

这是在“CC3100CC3200 SimpleLink™ Wi-Fi® Interneton-on-a-chip User's Guide.pdf”的96页说的,说明用token带的数据只有64bytes。

/* Important: in case the max len is changed, make sure the struct sl_NetAppHttpServerSendToken_t in protocol.h is padded correctly! */

#define MAX_TOKEN_NAME_LEN (20)

#define MAX_TOKEN_VALUE_LEN MAX_INPUT_STRING

在sdk中的netapp.h里面有上述定义,这个token长度最长为256,可用就更短了

我就想打破限制,一帧数据能达到2k,socket限制好像是2048bytes。

liupeichen liu:

回复 liang shen2:

你好,请问能否实现一个Get发送多个变量值

赞(0)
未经允许不得转载:TI中文支持网 » 请教下,http_server中get的data长度限制,如何加长。
分享到: 更多 (0)