首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GZipOutputStream & appengine

GZipOutputStream & appengine
EN

Stack Overflow用户
提问于 2010-12-14 20:52:54
回答 2查看 745关注 0票数 1

我正在AppEngine上编写一个java。这个servlet生成png映像。我想要"gzip“的回应。我是这样做的:

代码语言:javascript
复制
resp.setHeader("Content-Encoding","gzip");
resp.setContentType("image/png");

// ... png generation ...

GZIPOutputStream gzos = new GZIPOutputStream(resp.getOutputStream());
gzos.write(myPNGdata); 
gzos.close();

但是:在开发服务器中,没关系,png显示得很好,响应也很好。然后我在生产服务器(AppEngine)上测试,我得到的只是一个“坏”的映像.

我的密码有什么问题吗?它与开发/产品开发环境有关吗?

当然,如果我不对输出进行gzip,那么在这两种环境中都可以。

谢谢你的帮助。

编辑:我也试过这样做:

代码语言:javascript
复制
GZIPOutputStream gzos = new GZIPOutputStream(resp.getOutputStream());
gzos.write(ImagesServiceFactory.makeImage(readImage("somePicture.png")).getImageData());
gzos.flush();
gzos.finish();
gzos.close();

它也不起作用。

编辑2:实际上,响应是gzip。我用"curl theUrl >tmp.gz“获取servlet,然后将其压缩为"tmp.gz",图像很好。但是没有浏览器能够正确地显示它:(我的gzip有什么问题?

EN

回答 2

Stack Overflow用户

发布于 2010-12-14 23:58:37

appropriate基础设施将在适当的时候为您处理when内容。你不应该自己动手。

票数 3
EN

Stack Overflow用户

发布于 2010-12-14 20:55:37

检查下载图像的大小。如果它较小,那么您预期,很可能您需要在关闭之前冲洗流。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4444107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档