http.response.start goes AFTER http.response.body
This commit is contained in:
parent
9cd2345c80
commit
b035c86b31
1 changed files with 13 additions and 16 deletions
|
|
@ -11,7 +11,7 @@ from sass import CompileError
|
|||
from sassutils.builder import Manifest
|
||||
from importlib.metadata import version as _get_version
|
||||
|
||||
from .codecs import quote_css_string
|
||||
from .codecs import quote_css_string, want_bytes
|
||||
from .validators import must_be
|
||||
from .asgi import _MiddlewareFactory, ASGIApp, ASGIReceive, ASGIScope, ASGISend
|
||||
from . import __version__ as _suou_version
|
||||
|
|
@ -83,13 +83,6 @@ class SassAsyncMiddleware(_MiddlewareFactory):
|
|||
break
|
||||
except CompileError as e:
|
||||
logger.error(str(e))
|
||||
await send({
|
||||
'type': 'http.response.start',
|
||||
'status': self.error_status,
|
||||
'headers': [
|
||||
(b'Content-Type', b'text/css; charset=utf-8'),
|
||||
]
|
||||
})
|
||||
await send({
|
||||
'type': 'http.response.body',
|
||||
'body': '\n'.join([
|
||||
|
|
@ -110,6 +103,13 @@ class SassAsyncMiddleware(_MiddlewareFactory):
|
|||
'}'
|
||||
]).encode('utf-8')
|
||||
})
|
||||
await send({
|
||||
'type': 'http.response.start',
|
||||
'status': self.error_status,
|
||||
'headers': [
|
||||
(b'Content-Type', b'text/css; charset=utf-8'),
|
||||
]
|
||||
})
|
||||
|
||||
async def _read_file(path):
|
||||
with open(path, 'rb') as f:
|
||||
|
|
@ -120,22 +120,19 @@ class SassAsyncMiddleware(_MiddlewareFactory):
|
|||
else:
|
||||
break
|
||||
|
||||
resp_body = b''
|
||||
async for chunk in _read_file(os.path.join(package_dir, result)):
|
||||
resp_body += chunk
|
||||
await send({
|
||||
'type': 'http.response.body',
|
||||
'body': chunk
|
||||
})
|
||||
|
||||
await send({
|
||||
'type': 'http.response.start',
|
||||
'status': 200,
|
||||
'headers': [
|
||||
(b'Content-Type', b'text/css; charset=utf-8'),
|
||||
(b'Content-Type', b'text/css; charset=utf-8')
|
||||
]
|
||||
})
|
||||
|
||||
await send({
|
||||
'type': 'http.response.body',
|
||||
'body': resp_body
|
||||
})
|
||||
|
||||
await self.app(scope, receive, send)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue