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 ਸਰਵਰਾਂ ਅਤੇ ਗਾਹਕਾਂ ਵਿਚਕਾਰ ਰੀਅਲ-ਟਾਈਮ ਐਪਲੀਕੇਸ਼ਨਾਂ ਅਤੇ ਦੁਵੱਲੇ ਸੰਚਾਰ ਬਣਾਉਣ ਦੀਆਂ ਸੰਭਾਵਨਾਵਾਂ ਨੂੰ ਖੋਲ੍ਹਦਾ ਹੈ।