Use the new urllib3 stream generator.

This commit is contained in:
Cory Benfield
2013-06-18 17:53:28 +01:00
parent ecf57cac5c
commit 1faa76a86f
+12 -5
View File
@@ -537,11 +537,18 @@ class Response(object):
return iter_slices(self._content, chunk_size)
def generate():
while 1:
chunk = self.raw.read(chunk_size, decode_content=True)
if not chunk:
break
yield chunk
try:
# Special case for urllib3.
for chunk in self.raw.stream(chunk_size, decode_content=True):
yield chunk
except AttributeError:
# Standard file-like object.
while 1:
chunk = self.raw.read(chunk_size, decode_content=True)
if not chunk:
break
yield chunk
self._content_consumed = True
gen = generate()