A "break" at the end of the "if" statement will not hurt and avoid checking unnecessary headers.
Hi Jeff et al,If I am not wrong (I may have missed a configuration option), suds is not using or requesting gzip compression.I have added a few lines and tested at least requesting and accepting gzip compression. My changes have been trivial and this could be possibly added as an option to suds.The changes I have made (against 3.9):File: suds/transport/http.py:Extra imports:import gzipimport StringIOClass: HttpTransportMethod: sendAdded:Changed:After:
- headers = request.headers
added the following line
- headers.update([('Accept-Encoding', 'gzip')])
to
- result = Reply(200, fp.headers.dict, fp.read())
- replydata = fp.read()
- for header in fp.headers.dict.keys():
- if header.lower() == 'content-encoding' and fp.headers.dict[header] == 'gzip':
- replydatacompressedstream = StringIO.StringIO(replydata)
- gzipper = gzip.GzipFile(fileobj=replydatacompressedstream)
- replydata = gzipper.read()
- result = Reply(200, fp.headers.dict, replydata)
Best regardsDaniel