및 WebSocket 에 통합 Flask FastAPI

WebSocket 서버와 클라이언트 간의 양방향 실시간 통신 채널을 구축하기 위한 강력한 기술입니다. 다음은 널리 사용되는 WebSocket 두 가지 프레임워크 Flask 및 FastAPI.

WebSocket 에 통합 Flask

1단계: 라이브러리 설치

먼저 다음 명령을 사용하여 flask 및 라이브러리를 설치해야 합니다. flask-socketio

pip install Flask flask-socketio

2단계: 애플리케이션 설정

WebSocket 다음은 애플리케이션 에 통합하는 방법의 예입니다 Flask.

from flask import Flask, render_template  
from flask_socketio import SocketIO, emit  
  
app = Flask(__name__)  
socketio = SocketIO(app)  
  
@app.route('/')  
def index():  
    return render_template('index.html')  
  
@socketio.on('message')  
def handle_message(message):  
    emit('response', {'data': message})  
  
if __name__ == '__main__':  
    socketio.run(app)  

위의 코드 스니펫에서는 flask-socketio 라이브러리를 사용하여 서버를 생성합니다 WebSocket. 이 handle_message 함수는 클라이언트가 메시지를 보내고 서버가 이벤트를 방출하여 응답할 때 호출됩니다 response.

WebSocket 에 통합 FastAPI

1단계: 라이브러리 설치

다음 명령을 사용하여 fastapi 및 라이브러리를 설치합니다. uvicorn

pip install fastapi uvicorn

2단계: 애플리케이션 설정

WebSocket 다음은 애플리케이션 에 통합하는 방법의 예입니다 FastAPI.

from fastapi import FastAPI, WebSocket
from fastapi.responses import HTMLResponse  
  
app = FastAPI()  
  
@app.get('/')  
def get():  
    return HTMLResponse(content=open("index.html").read())  
  
@app.websocket("/ws")  
async def websocket_endpoint(websocket: WebSocket):  
    await websocket.accept()  
    while True:  
        data = await websocket.receive_text()  
        await websocket.send_text(f"Server received: {data}")

위의 코드 조각에서 우리는 서버를 FastAPI 만드는 데 사용합니다 WebSocket. 이 websocket_endpoint 함수는 연결을 수락하고 WebSocket 클라이언트가 보낸 데이터를 수신하며 데이터를 클라이언트로 다시 보내 응답합니다.

결론

및와 WebSocket 같은 널리 사용되는 프레임워크에 통합하면 서버와 클라이언트 간의 양방향 통신 및 실시간 애플리케이션 생성 가능성이 열립니다. Flask FastAPI