","image":"http://www.luping.net/uploads/20241027/1730028614671e244648fa2.jpg","datePublished":"2024-11-03T02:20:55+08:00","dateModified":"2024-11-03T02:20:55+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
FastAPI WebSockets का उपयोग करके Jinja2 टेम्पलेट में आइटम सूची अपडेट करना
एक टिप्पणी प्रणाली में, टिप्पणियों की एक अद्यतन सूची बनाए रखना महत्वपूर्ण है एक सहज उपयोगकर्ता अनुभव प्रदान करने के लिए। जब कोई नई टिप्पणी जोड़ी जाती है, तो उसे मैन्युअल पुनः लोड करने की आवश्यकता के बिना टेम्पलेट में प्रतिबिंबित किया जाना चाहिए।
Jinja2 में, टिप्पणी सूची को अपडेट करना आम तौर पर एपीआई कॉल के माध्यम से प्राप्त किया जाता है। हालाँकि, यह दृष्टिकोण विलंबता ला सकता है और उपयोगकर्ता इंटरफ़ेस की प्रतिक्रिया से समझौता कर सकता है। एक अधिक कुशल समाधान में वेबसॉकेट जैसी वास्तविक समय संचार प्रौद्योगिकियों का लाभ उठाना शामिल है। -क्लाइंट (ब्राउज़र) और सर्वर (बैकएंड) के बीच संचार चैनल। यह हमें नई जोड़ी गई टिप्पणियों सहित ग्राहकों के लिए वास्तविक समय के अपडेट प्रसारित करने की अनुमति देता है।
इस परिदृश्य में वेबसॉकेट को लागू करने के लिए, हम फास्टएपीआई और इसकी अंतर्निहित वेबसॉकेट कार्यक्षमता का उपयोग करेंगे। नीचे दिया गया कोड स्निपेट दर्शाता है कि वेबसॉकेट एंडपॉइंट कैसे बनाया जाता है:
fastapi आयात से फास्टएपीआई, वेबसॉकेट, वेबसॉकेटडिस्कनेक्ट ऐप = फास्टएपीआई() @app.websocket("/ws") async def websocket_endpoint(वेबसॉकेट: WebSocket): # वेबसॉकेट हैंडलिंग ...websocket_endpoint फ़ंक्शन के भीतर, हम क्लाइंट के साथ एक WebSocket कनेक्शन स्थापित करते हैं और आने वाले डेटा को संभालते हैं। जब कोई नई टिप्पणी प्राप्त होती है, तो हम इसे ब्रॉडकास्ट() विधि का उपयोग करके सभी कनेक्टेड क्लाइंट पर प्रसारित करेंगे।from fastapi import FastAPI, WebSocket, WebSocketDisconnect
app = FastAPI()
@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
# WebSocket handling
...
Jinja2 टेम्पलेट को अपडेट करने के लिए नई टिप्पणी के साथ, हम फ्रंट-एंड जावास्क्रिप्ट में ऑनमेसेज इवेंट श्रोता का उपयोग करते हैं। जब एक नया टिप्पणी संदेश प्राप्त होता है, तो हम गतिशील रूप से एक नया
यहां Jinja2 में टेम्पलेट को अपडेट करने का एक उदाहरण दिया गया है:
FastAPI और Jinja2 के साथ WebSockets को लागू करके, हम एक उत्तरदायी और वास्तविक समय टिप्पणी प्रणाली प्राप्त करते हैं जहां नई जोड़ी गई टिप्पणियां मैन्युअल रीलोडिंग या एपीआई कॉल की आवश्यकता के बिना तुरंत टेम्पलेट में दिखाई देती हैं।अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3