سؤال

هل من الممكن استخدام Socket.io بطريقة عبر المجال؟إذا كان الأمر كذلك، كيف؟يتم ذكر الاحتمال حول الويب ولكن لا يتم إعطاء أمثلة رمز في أي مكان.

هل كانت مفيدة؟

المحلول

نقلا عن Socket.io Faq :

socket.io تدعم اتصالات المجال عبر المجال؟

على الإطلاق، في كل متصفح!

فيما يتعلق بكيفية ذلك: WebSockets الأصلي عبارة عن مجال عبر المجال حسب التصميم، يقدم Socket.io ملف سياسة فلاش للاتصالات الفلاش عبر المجال، ويمكن ل XHR2 استخدام Cors، وأخيرا يمكنك دائما استخدام JSONP.

نصائح أخرى

** Socket.io الإصدار -> 1.3.7 **

هل من الممكن استخدام المقبس. معا بطريقة عبر المجال؟ نعم، بالتأكيد.

إذا كان الأمر كذلك، كيف؟

الخيار 1: استخدام القوة للمحاسبين فقط

بشكل افتراضي، Websockets هي المجال عبر. إذا قمت بإجبار Socket.io على استخدام ذلك فقط كوسيلة لتوصيل العميل والخادم، فأنت جيد للذهاب.

جانب الخادم giveacodicetagpre.

جانب العميل giveacodicetagpre.

هذا كل شيء. مشكلة؟ لن تعمل على المتصفحات (للعملاء) الذين لا يدعمون أجهزة الإنترنت. مع ذلك تقتل إلى حد كبير السحر الذي هو المقبس. لأنه، لأنه يبدأ تدريجيا مع الاقتراع الطويل الترقية لاحقا إلى WebSockets (إذا كان العميل يدعمه.)

إذا كنت متأكدا 100٪، فستكون جميع عملائك من الوصول إلى متصفحات متوافقة مع HTML5، فأنت جيد للذهاب.

الخيار 2: السماح ل Cors على جانب الخادم، واسمحوا المقبس.يو مقبض ما إذا كنت تريد استخدام أجهزة الإنترنت أو الاقتراع الطويل.

لهذه العلبة، تحتاج فقط إلى ضبط إعداد جانب الخادم. اتصال العميل هو نفسه دائما.

جانب الخادم giveacodicetagpre.

هذا كل شيء. آمل أن يساعد أي شخص آخر.

ببساطة إدراج اسم المجال البعيد عند إنشاء مأخذ توصيل جانبي العميل: giveacodicetagpre.

Socket.io يدعم اتصالات المجال عبر المجال، ولكن ضع في اعتبارك أن ملف تعريف الارتباط لن يتم تمرير ملف تعريف الارتباط الخاص بك إلى الخادم.سيكون لديك إما:

(1) توصل إلى مخطط بديل لتحديد الهوية (رمز مخصص أو ملف تعريف ارتباط جافا سكريبت - ضع في اعتبارك أن هذا لا ينبغي أن يكون هو معرف الجلسة في الواقع، إلا إذا كنت ترغب في وضع نفسك في خطر اختطاف الجلسة)

أو (2) إرسال طلب jsonp القديم القديم الجيد إلى الخادم أولا للحصول على ملف تعريف الارتباط.ثم سيتم إرسالها مع مصافحة اتصال المقبس.

سهلة وأمن!

في الملف الرئيسي وضعه قبل IO.ON ("الاتصال")، أضف الخطوط: giveacodicetagpre.

نعم يفعل ذلك. لقد قمت بتنفيذ المقبس عبر المجال. أويو لاختبار ما إذا كان يعمل. giveacodicetagpre.

يجب أن تعمل بشكل جيد.

قم بإنشاء الخادم الخاص بك عن طريق IO مثل هذا: giveacodicetagpre.

في أصول الصفيف حدد أصل صالح

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top