Loading docs/ref/request-response.txt +5 −21 Original line number Diff line number Diff line Loading @@ -555,28 +555,12 @@ file-like object:: Passing iterators ~~~~~~~~~~~~~~~~~ Finally, you can pass ``HttpResponse`` an iterator rather than strings. If you use this technique, the iterator should return strings. Finally, you can pass ``HttpResponse`` an iterator rather than strings. ``HttpResponse`` will consume the iterator immediately, store its content as a string, and discard it. Passing an iterator as content to :class:`HttpResponse` creates a streaming response if (and only if) no middleware accesses the :attr:`HttpResponse.content` attribute before the response is returned. .. versionchanged:: 1.5 This technique is fragile and was deprecated in Django 1.5. If you need the response to be streamed from the iterator to the client, you should use the :class:`StreamingHttpResponse` class instead. As of Django 1.7, when :class:`HttpResponse` is instantiated with an iterator, it will consume it immediately, store the response content as a string, and discard the iterator. .. versionchanged:: 1.5 You can now use :class:`HttpResponse` as a file-like object even if it was instantiated with an iterator. Django will consume and save the content of the iterator on first access. If you need the response to be streamed from the iterator to the client, you must use the :class:`StreamingHttpResponse` class instead. Setting header fields ~~~~~~~~~~~~~~~~~~~~~ Loading Loading
docs/ref/request-response.txt +5 −21 Original line number Diff line number Diff line Loading @@ -555,28 +555,12 @@ file-like object:: Passing iterators ~~~~~~~~~~~~~~~~~ Finally, you can pass ``HttpResponse`` an iterator rather than strings. If you use this technique, the iterator should return strings. Finally, you can pass ``HttpResponse`` an iterator rather than strings. ``HttpResponse`` will consume the iterator immediately, store its content as a string, and discard it. Passing an iterator as content to :class:`HttpResponse` creates a streaming response if (and only if) no middleware accesses the :attr:`HttpResponse.content` attribute before the response is returned. .. versionchanged:: 1.5 This technique is fragile and was deprecated in Django 1.5. If you need the response to be streamed from the iterator to the client, you should use the :class:`StreamingHttpResponse` class instead. As of Django 1.7, when :class:`HttpResponse` is instantiated with an iterator, it will consume it immediately, store the response content as a string, and discard the iterator. .. versionchanged:: 1.5 You can now use :class:`HttpResponse` as a file-like object even if it was instantiated with an iterator. Django will consume and save the content of the iterator on first access. If you need the response to be streamed from the iterator to the client, you must use the :class:`StreamingHttpResponse` class instead. Setting header fields ~~~~~~~~~~~~~~~~~~~~~ Loading