ASGI для django не совместим с Server-sent-events?
Ранее я написал SSE (Server sent event) запрос, используя Django, и он выглядел нормально.
def event_stream():
"""
Generator function to yield messages.
"""
for i in range(10):
yield f"data: Message {i}\n\n"
time.sleep(1) # Simulate delay in message generation
response = StreamingHttpResponse(event_stream(), content_type='text/event-stream')
response['Cache-Control'] = 'no-cache'
response['Connection'] = 'keep-alive'
return response
Позже я установил каналы, потому что мне нужно было использовать websocket, и перешел с WSGI на использование ASGI.
На этом этапе я заметил, что запрос не возвращается должным образом, а возвращает все данные сразу в конце. Я не уверен, что является причиной этого и как это исправить.
Я уверен, что мой код не изменился, и проблема только в разнице между wsgi и asgi.
python version:3.11.7
django version:5.0.6
версия каналов: 3.0.5