이제 FastAPI를 생성합니다. 실시간 연결(/sse)과 요청 전송(/messages/)은 역할이 다르기 때문에, 분리된 경로를 사용합니다.
코드
from fastapi import FastAPI from starlette.routing import Route, Mount app = FastAPI( debug=True, routes=[ Route("/sse", endpoint=handle_sse), Mount("/messages/", app=sse.handle_post_message), ], )
• Route: 단일 함수(엔드포인트)를 경로에 연결할 때 사용합니다. (예 /sse → handle_sse)
• Mount: 전체 하위 앱을 특정 경로에 연결할 때 사용합니다. (예 /messages/ → sse.handle_post_message)