问题描述
做的是上传的功能。一次request,会获得服务器端多次关于进度信息的response,写入iframe中。但如何保证浏览器端能及时收到每一个response信息?目前服务器端总是能持续输出信息,但每次都是进度在80%多的时候,浏览器上才显示进度(alert("xxx")才有信息)。在文件小于100K的时候,浏览器能实时的接收信息。如果是大些的文件,如:2M,就只能在80%多才有进度显示。用过以下办法了,都没有效果。printWriter.flush();printWriter.close();response.flushBuffer();response.setStatus(HttpServletResponse.XXX);请注意,是一次request,不是多次。 问题补充:Anddy 写道
解决方案
一次请求,返回多个response? 这可能吗?http协议中,客户端发送一个请求(request)给服务器,服务器在接收到这个请求后将生成一个响应(response)返回给客户端。加上http协议的无状态特点。 这可能吗?针对你这种情况,你可以在客户端不断发送ajax异步请求,来获取服务端信息,进而更新上传的进度。
时间: 2024-08-30 04:23:10