آنچه در این مقاله میخوانید [پنهانسازی]
WebSocket یک پروتکل ارتباطی دوطرفه است که امکان ارتباط سریع و مداوم بین کلاینت و سرور را فراهم میکند. در این مقاله، نحوه پیادهسازی وب سوکت در جنگو را بررسی میکنیم.
قبلا در مقاله ای با عنوان (کارهای Real-time در جنگو با Django Channels) به طور مفصل به انجام کارهای real-time در فریم ورک جنگو پرداخته ایم.
1. نصب کتابخانههای مورد نیاز
برای استفاده از وب سوکت در جنگو، باید از Django Channels استفاده کنید. ابتدا آن را نصب کنید:
Django Channels این امکان را فراهم میکند که جنگو بتواند درخواستهای غیر از HTTP را نیز مدیریت کند، مانند WebSocket، HTTP/2 و حتی پروتکلهای دیگر، با استفاده از Channels، میتوانیم کانالهایی برای ارتباطات بلادرنگ بسازیم که برای مواردی مثل چت آنلاین، بروزرسانیهای بلادرنگ دادهها و بازیهای آنلاین مناسب است.
2. پیکربندی Channels
فایل settings.py را باز کرده و تنظیمات زیر را اضافه کنید:
سپس یک فایل asgi.py ایجاد یا بهروزرسانی کنید:
3. تعریف Consumer
در فایل consumers.py، یک WebSocket Consumer تعریف کنید:
4. تنظیم URL
در فایل urls.py، مسیر مربوط به WebSocket را تعریف کنید:
5. تست WebSocket
از ابزارهایی مانند Postman یا مرورگر برای اتصال به مسیر ws://localhost:8000/ws/chat استفاده کنید و پیامها را ارسال و دریافت کنید.
نتیجه نهایی
این پیادهسازی ساده میتواند در مواردی مانند چت آنلاین، نوتیفیکیشنهای لحظهای و بازیهای چندنفره استفاده شود.







