يجب استخدام المقبس في العقدة؛ المقبس هو مكتبة لـnodejs يستخدم وظائف العقدة لتغليف بعض الوظائف ويعتمد على بعض واجهات برمجة التطبيقات الخاصة بالعقدة، لذلك لا يمكن استخدامه إلا في العقدة الثانية -تقنية تبادل بيانات الاتصالات باستخدام EngineIO في الطبقة السفلية.
بيئة تشغيل هذه المقالة: نظام Windows 10، إصدار Nodejs 16، كمبيوتر Dell G3.
المقبس هو مكتبة من Nodejs، وهو ما يعادل الآخرين الذين يستخدمون وظائف Nodejs لتغليف بعض الوظائف التي يمكنك استخدامها.
المقبس IO عبارة عن تقنية تبادل بيانات اتصال ثنائية الاتجاه تم إنشاؤها بين العميل والخادم، وذلك باستخدام EngineIO في الأسفل. يستخدم عميل SwitchIO Engine.IO-Client، ويستخدم الخادم Engine.IO.
توسيع المعرفة
كيف يعمل المقبس IO
عندما يحاول المتصفح إنشاء المقبس، فإن المقبس يستخدم أولاً استقصاء xhr لإنشاء استقصاء طويل. بمجرد إنشاء الاستقصاء الطويل، ستتم ترقيته إلى اتصال WebSocket.
يتم تنفيذ الطبقة السفلية من المقبس باستخدام مكتبة EngineIO، التي تتضمن بروتوكول المقبس الخاص بها (يسمى مؤقتًا EIO المقبس) باستخدام WebSocket وXMLHttprequest. يشتمل مقبس EIO الكامل على اتصالات XHR وWebSocket متعددة.
عميل
تقوم مقابس EIO بتمرير مصافحة XHR (XMLHttprequest). ترسل الواجهة الأمامية XHR لإخبار الخادم بأنني أريد بدء استقصاء XHR الطويل. تتضمن البيانات التي يتم إرجاعها بواسطة الواجهة الخلفية علامة مفتوحة (ممثلة بالرقم 0)، بالإضافة إلى حقول sid والترقية، والفاصل الزمني ping، ومهلة ping.
0{"sid": "8b7ab1ae-fbcf-4d23-8192-3c14a2a90721"، "upgrades": ["websocket"]، "pingInterval": 10000، "pingTimeout": 60000}sid هو معرف الجلسة لمقبس EIO هذا نظرًا لأن مقبس EIO واحد يحتوي على طلبات متعددة، وسوف تتصل الواجهة الخلفية بمقابس EIO متعددة في نفس الوقت، فإن sid يعادل معرف الجلسة.
تشير ترقيات الحقول الأخرى، عادةً ['websocket']، إلى أنه يمكن ترقية طريقة الاتصال من الاستقصاء الطويل إلى WebSocket.
تبدأ الواجهة الأمامية في استقصاء XHR الطويل عند إرسال XHR الأول. إذا كانت هناك حاجة لإرسال واستقبال البيانات في هذا الوقت، فسيتم تنفيذها من خلال الاستقصاء الطويل. ويعني ما يسمى بالاستقصاء الطويل أن الواجهة الأمامية ترسل طلبًا، وينتظر الخادم حتى يتم إرجاع البيانات قبل الاستجابة. وهذا يتيح الاتصال في اتجاهين.
بعد أن تتلقى الواجهة الأمامية ترقيات المصافحة، سيكتشف EIO ما إذا كان المتصفح يدعم WebSocket، وإذا كان الأمر كذلك، فسيبدأ اتصال WebSocket، ثم يرسل جزءًا من البيانات مع محتوى المسبار ونوع اختبار الاتصال إلى الخادم من خلال هذا. WebSocket. إذا أعاد الخادم بيانات تحتوي على محتوى المسبار ونوع بونغ في هذا الوقت، فستوقف الواجهة الأمامية استقصاء HTTP الطويل الذي تم إنشاؤه مسبقًا، وستستخدم قناة WebSocket فقط لإرسال البيانات واستقبالها.
أثناء دورة حياة مقبس EIO، سيتم إجراء اختبار بينج بونج مرة واحدة كل فترة لاختبار ما إذا كانت الشبكة طبيعية.
هذا هو هيكل إطار WebSocket، حيث يرسل اللون الأخضر ويستقبل اللون الأبيض. الرقم السابق هو نوع حزمة البيانات، 2 هو ping، 3 هو pong، 42 هو رسالة
التعلم الموصى به: "الفيديو التعليمي لـnodejs"
ما ورد أعلاه هو تفاصيل ما إذا كان يجب استخدام المقبس في العقدة لمزيد من المعلومات، يرجى الانتباه إلى المقالات الأخرى ذات الصلة على هذا الموقع!