Jetty是否支持HTTP分块响应/传输编码?
我目前正在使用Jetty 8,我想在servlet响应中编写几个事件(文本)。例如: 写起始 编写事件2 编写事件3 写完 全部由分隔符分隔\n 此响应的时间跨度可能不会超过20秒,但客户端应在发生时接收每个事件(行)。我找不到这方面的任何文档,但我想与社区核实一下 如果Jetty不这样做,是否还有其他servlet引擎可以这样做,也可以嵌入 顺便说一句,我尝试了下面的方法,但是在servlet返回之前没有收到任何数据,然后一次收到所有数据Jetty是否支持HTTP分块响应/传输编码?,jetty,embedded-jetty,Jetty,Embedded Jetty,我目前正在使用Jetty 8,我想在servlet响应中编写几个事件(文本)。例如: 写起始 编写事件2 编写事件3 写完 全部由分隔符分隔\n 此响应的时间跨度可能不会超过20秒,但客户端应在发生时接收每个事件(行)。我找不到这方面的任何文档,但我想与社区核实一下 如果Jetty不这样做,是否还有其他servlet引擎可以这样做,也可以嵌入 顺便说一句,我尝试了下面的方法,但是在servlet返回之前没有收到任何数据,然后一次收到所有数据 resp.setContentType("text
resp.setContentType("text/html");
resp.setHeader("Transfer-Encoding", "chunked");
resp.getWriter().write("closing");
resp.getWriter().flush();
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
resp.getWriter().write("closed");
resp.getWriter().flush();
编辑:必须使用\r\n作为行终止符如果每一行都以\r\n
resp.setContentType("text/html");
resp.setHeader("Transfer-Encoding", "chunked");
resp.getWriter().write("closing\r\n");
resp.getWriter().flush();
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
resp.getWriter().write("closed\r\n");
resp.getWriter().flush();