Skip to content

Commit e10e113

Browse files
Fix: default to status 200 for non-empty DatastarResponse (Litestar) (#39)
Litestar's Stream base class defaults to status 201 when no status_code is provided. Datastar's client-side fetch action (RC8) only processes SSE responses with status 200 — non-200 responses are silently discarded: // fetch.ts line 561 if (status !== 200) { dispose(); resolve(); return; } The empty-content case already defaults to 204. This adds the same pattern for the non-empty case: default to 200 when the caller doesn't specify a status code.
1 parent 43f32ed commit e10e113

1 file changed

Lines changed: 1 addition & 0 deletions

File tree

src/datastar_py/litestar.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ def __init__(
4646
status_code = status_code or 204
4747
content = tuple()
4848
else:
49+
status_code = status_code or 200
4950
headers = {**self.default_headers, **(headers or {})}
5051
if isinstance(content, DatastarEvent):
5152
content = (content,)

0 commit comments

Comments
 (0)