一般用例
想象一个客户端正在上传大量JSON。应该保留Content-Type,application/json
因为它描述了实际数据。Accept-Encoding和Transfer-Encoding似乎是在告诉服务器应如何格式化响应。看来,响应为此目的明确使用了Content-Encoding头,但这不是有效的请求头。
我有什么想念的吗?有没有人找到一个优雅的解决方案?
具体用例
我的用例是,我有一个移动应用程序,该应用程序生成大量JSON(在某些情况下会生成一些JSON数据,但程度较小),并且压缩请求可以节省大量带宽。我使用Tomcat作为我的Servlet容器。我将Spring用于它的MVC注释,主要是为了将JEE的某些内容抽象到一个更加整洁,基于注释的接口中。我还使用Jackson进行自动(反序列化)。
我也使用nginx,但是我不确定那是否是我想要进行减压的地方。Nginx节点仅平衡请求,然后通过数据中心分发这些请求。保持压缩,直到它真正到达要处理的节点,这将是同样好的。
提前致谢,
约翰
编辑:
我和@DaSourcerer之间的讨论对撰写本文时对事物状态感到好奇的人真的很有帮助。
我最终实现了自己的解决方案。请注意,这指定了分支“ ohmage-3.0”,但是它将很快合并到master分支中。您可能要检查那里以查看我是否进行了任何更新/修复。
https://github.com/ohmage/server/blob/ohmage-3.0/src/org/ohmage/servlet/filter/DecompressionFilter.java