小编Geo*_*ham的帖子

如何在AppEngine上启用transfer-encoding:Java中的chunked

我已就此主题进行了大量谷歌搜索,但未能找到任何内容(除了确认AppEngine忽略对'resp.setHeader("transfer-encoding",xxxx)'的调用.

我的问题是我有一个服务器进程需要一点时间才能完成(~3秒avg),但是会产生连续流的结果(即第一个数据对象在10ms之后就绪).

目前,服务器缓冲响应,然后将整批内容向下发送到客户端以供显示.虽然这是有效的,但它不是一个出色的用户体验,因为用户必须等待整个过程完成才能看到第一个结果......

我相信使用分块传输可以解决这个问题,因为我可以立即向客户端发送第一个响应(并在可用时立即传输后续数据),从而更好地了解进度等.

我的问题是我无法弄清楚如何启用分块传输.

谷歌搜索分块传输和应用程序引擎主要是从想要禁用 blobstore中的分块传输的人发布帖子,或者发布默认情况下启用分块传输的帖子.但是,到目前为止,我的测试表明,至少在我的应用中,这不是真的.

同样,非应用程序引擎的引用谈论设置"传送编码"内容标题 - 但这是在AppEngine上明确忽视(至少,它是根据Python文档 - 找不到在Java端东西,宣称它明确地,但是当我测试它时它没有工作).

最后,我已经尝试刷新respose对象,获取响应编写器和刷新,获取响应输出流和刷新等没有任何区别.

所以 - 我的问题是: 如何启用分块传输?

java google-app-engine transfer-encoding

4
推荐指数
1
解决办法
1541
查看次数