欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

s60v2对http协议的解析解决思路

更新时间: 2014-01-05 02:40:53 责任编辑: Author_N1

 

s60v2对http协议的解析
小弟最近将一个原来部署在tomcat上的服务器移植到resin上,发现这个服务器对S60V2版本的手机不支持了。抓包分析如下:
原来在tomcat上时,服务器的http响应用content-length指示内容长度,对于S60V2、S60V3和S40手机都是这样
部署到resin上后,服务器的http响应没有content-length头域了,而是用transfer-encoding:chunked动态表示长度,对于上述的三个平台的手机都是这样。
部署在resin上的服务器对S60V3和S40都能够支持,就是对S60V2的无法支持,每次服务器返回给客户端http响应以后,客户端就提示连接错误,这个客户端是手机自带的,也无法跟进去分析到底是怎么回事。
另外一个奇怪的地方是,我在服务器的servlet中明明用了response.setContentLength(),但就是无法在最后发出去的http响应中显示content-length头域,debug时,发现使用response.setContentLength()函数后,response中的contentlength没有什么变化,这是怎么回事?

我现在有两个疑问
1.S60V2是不是不支持transfer-encoding
2.resin是不是需要配置什么东西,让他能够使用content-length头域

急求解答啊!!!
--参考方法--
求教啊~
--参考方法--
问题解决了
1.S60V2确实是不支持transfer-encoding方式表示消息内容长度,服务器返回的响应中必须用content-length表示消息体长度
2.如果使用了out.flush(),在响应中就会使用transfer-encoding头域
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:40:53
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/13104/
本文WWW.DOC100.NET DOC100.NET版权所有。