[python] Flask-RESTful에서 웹 소켓 연결을 통한 실시간 통신 방법
  1. Flask-SocketIO 설치하기 Flask-SocketIO는 Flask 애플리케이션에서 웹 소켓을 사용할 수 있도록 도와주는 확장 패키지입니다. 아래 명령어를 사용하여 패키지를 설치합니다.

    pip install flask-socketio
    
  2. Flask 애플리케이션 초기화하기 Flask 애플리케이션을 초기화하고 SocketIO 객체를 생성합니다.

    from flask import Flask
    from flask_socketio import SocketIO
    
    app = Flask(__name__)
    app.config['SECRET_KEY'] = 'your-secret-key'
    socketio = SocketIO(app)
    
  3. WebSocket 이벤트 핸들러 작성하기 웹 소켓 연결과 관련된 이벤트 핸들러 함수를 작성합니다. 예를 들어, 클라이언트가 연결되었을 때의 이벤트인 ‘connect’ 이벤트에 대한 핸들러를 작성하는 방법을 보겠습니다.

    @socketio.on('connect')
    def handle_connect():
        print('Client connected')
    
  4. Flask 애플리케이션 실행하기 Flask 애플리케이션을 실행하고 SocketIO 객체를 사용하여 웹 소켓을 처리합니다.

    if __name__ == '__main__':
        socketio.run(app)
    

이제 Flask-RESTful 애플리케이션에서 웹 소켓을 통한 실시간 통신을 구현할 수 있습니다. 추가적으로, Flask-SocketIO에는 더 많은 기능과 설정이 있으니 공식 문서를 참고하시기 바랍니다.

참고 문서: