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 سرورز اور کلائنٹس کے درمیان ریئل ٹائم ایپلی کیشنز اور دو طرفہ مواصلت بنانے کے امکانات کو کھولتا ہے۔