Ticket #5915 defect closed worksforme

Opened 9 months ago

Last modified 9 months ago

transfer encoding chunked

Reported by: rain.ning Owned by:
Priority: normal Milestone:
Component: web Keywords: chunked encoding
Cc: jknight Branch:
Author: Launchpad Bug:

Description (last modified by exarkun) (diff)

I am simulating chunked encoding with the code below. Twisted web server can successfully chunked transfer the content, however, the last chunk (0 + CRLF) is not sent, at least from the tcpdump, I don't see it.

f = open(DOC_ROOT + "/" + request.prepath[0] + "/" + request.prepath[1], 'rb')
while 1:
    chunk_size = random.randint(100, 1000)
    chunk_data = f.read(chunk_size)
    if len(chunk_data) != chunk_size:
        chunk_size = len(chunk_data)
    if chunk_size == 0:
        #comment the line below or not, does not change the result
        #request.write('0' + CRLF) 
        break
    request.write(chunk_data)
request.finish()
f.close()

Attachments

twisted-chunked-encoding.py Download (0.8 KB) - added by rain.ning 9 months ago.
code in description was in a mess.
twisted-chunked-encoding.rpy Download (0.9 KB) - added by exarkun 9 months ago.

Change History

1

Changed 9 months ago by DefaultCC Plugin

  • cc jknight added

Changed 9 months ago by rain.ning

code in description was in a mess.

2

Changed 9 months ago by exarkun

  • description modified (diff)

Fix description markup

3

Changed 9 months ago by exarkun

  • status changed from new to closed
  • resolution set to worksforme

Thanks for your interest. I can't reproduce a problem with this code. A complete, working example based on yours is attached. Please re-open if you can demonstrate the problem with a runnable example. Thanks again.

Changed 9 months ago by exarkun

Note: See TracTickets for help on using tickets.