小弟最近将一个原来部署在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头域