FastAPI là một framework hiện đại, nhanh và dễ sử dụng để xây dựng các API với Python. Dưới đây là hướng dẫn cơ bản về cách cấu hình SSE response bằng FastAPI.
1. Cài đặt môi trường
Đầu tiên, hãy chắc chắn rằng bạn đã cài đặt Python và pip trên máy của mình.
2. Tạo dự án và môi trường ảo
mkdir sse-server-fastapi
cd sse-server-fastapi
python -m venv venv
source venv/bin/activate # Trên Windows sử dụng: venv\Scripts\activate
3. Cài đặt các gói cần thiết
pip install fastapi uvicorn
4. Tạo API server
Tạo một file server.py
và thêm mã sau để thiết lập máy chủ SSE:
from fastapi import FastAPI
import asyncio
from fastapi.responses import StreamingResponse
app = FastAPI()
@app.get("/events")
async def get_events():
async def event_generator():
for i in range(10):
yield f"data: {i}\n\n"
await asyncio.sleep(1)
return StreamingResponse(event_generator(), media_type="text/event-stream")
5. Run server
uvicorn server:app --reload
6. Kiểm tra kết nối
Sử dụng postman, call request tới localhost:8000/events
và kiểm tra data server trả về
Kết luận
SSE là một giải pháp đơn giản và hiệu quả để cập nhật dữ liệu thời gian thực từ máy chủ đến client. Nó phù hợp cho các ứng dụng cần thông tin cập nhật liên tục như thông báo, dữ liệu cảm biến, và nhiều ứng dụng khác. Hy vọng hướng dẫn này sẽ giúp bạn hiểu rõ hơn và áp dụng SSE trong các dự án của mình.