ConnectAsync کال کرنے سے پہلے ClientWebSocket کے اختیارات ترتیب دیں۔ پہلے کنکشن شروع کرنا اور بعد میں پراکسی مقرر کرنا اس ہینڈ شیک کے لیے بہت دیر ہے۔

using var socket = new ClientWebSocket();
socket.Options.Proxy = new WebProxy("http://203.0.113.10:8080")
{
    Credentials = new NetworkCredential(proxyUser, proxyPassword)
};
using var deadline = new CancellationTokenSource(TimeSpan.FromSeconds(20));
await socket.ConnectAsync(new Uri("wss://example.com/socket"),
                          deadline.Token);

پتے اور اکاؤنٹ متغیرات بطور مثال ہیں۔ مطلوبہ نام فضا میں System.Net، System.Net.WebSockets اور System.Threading شامل ہیں۔ اپنی تعیناتی میں رن ٹائم، پلیٹ فارم اور پراکسی سروس کی معاونت کردہ اسناد کی قسم اور تصدیق کا طریقہ استعمال کریں۔

WebProxy کی اسناد پراکسی کی ہیں۔ ClientWebSocketOptions میں WebSocket سرور کی تصدیق کے لیے الگ Credentials خاصیت بھی ہے۔ ایک مقرر کرنے سے دوسرا فریق خودکار طور پر مطمئن نہیں ہوتا۔

محفوظ WebSocket کنکشن میں، مسترد شدہ پراکسی سرنگ منزل کے WebSocket ہینڈ شیک کے شروع ہونے ہی کو روک سکتی ہے۔ پراکسی کنکشن اور تصدیق کے شواہد کو منزل کے HTTP upgrade جواب اور بعد کے WebSocket ٹریفک سے الگ رکھیں۔

کامیاب کنکشن صرف سیشن کا آغاز ہے۔ ایپ کی پوری عمر کے دوران وصول/ارسال کی منسوخی اور وسائل کی صفائی واضح رکھیں؛ اس خاکے کی سیٹ اپ مدت ہر اگلے پیغام کے لیے مکمل پالیسی نہیں ہے۔

متعلقہ مضامین