Tweak encoding behaviour

- Don't fail to identity encoding when an unknown encoding is specified.
- Don't constrain encodings. I want to try to modify traffic as little as
possible by default.
- When decoding, delete content-encoding header rather than set it to "identity"
- Refuse to decode/encode when there is an existing but unknown
content-encoding header.
This commit is contained in:
Aldo Cortesi
2011-08-02 20:34:01 +12:00
parent bb6ec29b18
commit 8cc0469ee7
3 changed files with 13 additions and 8 deletions

View File

@@ -134,11 +134,14 @@ class HTTPMsg(controller.Msg):
Content-Encoding header and changing Content-Encoding header to
'identity'.
"""
ce = self.headers["content-encoding"]
if not ce or ce[0] not in encoding.ENCODINGS:
return
self.content = encoding.decode(
(self.headers["content-encoding"] or ["identity"])[0],
ce[0],
self.content
)
self.headers["content-encoding"] = ["identity"]
del self.headers["content-encoding"]
def encode(self, e):
"""