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 -टाइम अॅप्लिकेशन्स आणि सर्व्हर आणि क्लायंट यांच्यात द्विदिशात्मक संप्रेषण तयार करण्याची शक्यता निर्माण होते.