Skip to content

Commit c429455

Browse files
committed
send response headers separately before body to support chunking
1 parent 94fce44 commit c429455

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

adafruit_esp32spi/adafruite_esp32spi_wsgiserver.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
# pylint: disable=no-name-in-module
4848

4949
import io
50+
import gc
5051
from micropython import const
5152
import adafruit_esp32spi.adafruit_esp32spi_socket as socket
5253
from adafruit_esp32spi.adafruit_esp32spi_requests import parse_headers
@@ -114,10 +115,15 @@ def finish_response(self, result):
114115
for header in self._response_headers:
115116
response += "{0}: {1}\r\n".format(*header)
116117
response += "\r\n"
117-
for data in result:
118-
response += data
119118
self._client_sock.write(response.encode("utf-8"))
119+
for data in result:
120+
if isinstance(data, bytes):
121+
self._client_sock.write(data)
122+
else:
123+
self._client_sock.write(data.encode("utf-8"))
124+
gc.collect()
120125
finally:
126+
print("closing")
121127
self._client_sock.close()
122128

123129
def client_available(self):

0 commit comments

Comments
 (0)