### اتريد:
### السلوك الحالي
لا يمكنني الاتصال بخادمي عبر المقبس io ، لقد انقضت المهلة.
### خطوات التكاثر (إذا كان السلوك الحالي خطأ)
في رد الفعل الأصلي:
شبيبة
استيراد io من "socket.io-client" ؛
const BACKEND = 'عنوان url الخاص بخادم المقبس الخاص بي'
const sock = io (BACKEND، {transports: ['websocket']، forceNew: true})؛
sock.on ('متصل'، () = {
المصحح.
})
""
تبدو سجلات تصحيح الأخطاء كما يلي:
لا يوجد شيء سوى مهلة تشغيلها
### سلوك متوقع
أتوقع أن أكون قادرًا على الاتصال بخادم socketio الخاص بي ، بنفس الطريقة التي يمكنني الاتصال بها في متصفح الويب.
### يثبت
عفوًا ، نسخة مكررة من https://github.com/socketio/socket.io-client/issues/1245
أنا أعيد فتح هذه المشكلة ، هذا مختلف قليلاً.
حاولت تثبيت socket io على 0.57.8 تثبيت أصلي للتفاعل جديد وأواجه هذه المشكلة مرة أخرى.
تواجه نفس المشكلة. لا يعمل في إصدار RN 0.57.3. يعمل بشكل جيد عند الاتصال بالخادم المحلي. لكنها لا تتصل بالخادم الخلفي الرئيسي.
رد الفعل الأصلي: 0.57.8
رد الفعل: 16.6.3
socket.io- العميل: 2.0.4
هذا عمل لي. تحتاج أيضًا إلى تغيير إصدار socketio js في جانب الخادم إلى 2.0.4
أواجه نفس المشكلة
استمرت مشكلة @ jr-k بعد اختراق @ anooj1483 وفقًا لـ https://github.com/socketio/socket.io-client/issues/1245#issuecomment -451285245 في # 1245
إنه نفس الشيء بالنسبة لي
تواجه نفس المشكلة. يعمل جيدًا عندما يكون وضع التصحيح قيد التشغيل ، ولكنه لا يعمل عند إيقاف تشغيل وضع التصحيح أو تم إنشاء ملف apk مع وضع الإصدار.
Versions:
"react": "16.8.2",
"react-native": "0.58.4",
"socket.io-client": "^2.2.0"
نفس المشكلة مثل أي شخص آخر. يعمل بشكل مثالي إذا كان التصحيح.
React Native إصدارات التطبيق:
"رد فعل": "16.5.0"،
"تفاعل أصلي": "^ 0.58.4"،
"socket.io-client": "^ 2.1.1"
إصدار الخادم:
"socket.io": "2.0.4"
عمل لي socket.io-client: 2.0.4
.
لقد تلقيت خطأ عند استخدام 2.0.4 + ReactNative
TypeError: undefined ليس كائنًا (تقييم "n.protocol")
تم إصلاحه لي عندما كنت أقوم بإضافة المضيف: المنفذ مثل التالي في وضع التصحيح:
مقبس const = io (" //domain.com:port " ، يختار) ؛ // هذا يعمل فقط في وضع التصحيح
لم أعمل في أي وضع تصحيح ، اضطررت إلى إضافة البروتوكول:
مقبس const = io (" http://domain.com:port " ، يختار) ؛
لدي نفس المشكلة
react-native : 0.57.8
،
socket-io-client : 2.2.0
يعمل فقط عندما يتم تمكين التصحيح
هل وجد أي شخص إصلاح لهذا حتى الآن؟ لقد جربت عدة إصدارات مختلفة من الحزمة دون حظ
هناك العديد من أسباب هذا الخطأ / الخطأ ، كان لي واحدًا فقط من العديد.
جرب الإصدار الأخير من جيثب ، مثل هذا ، حل مشاكلي مع RN android:
npm i socketio/engine.io-client#3.3.2 -S
هتافات
تم إصلاحه لي عندما كنت أقوم بإضافة المضيف: المنفذ مثل التالي في وضع التصحيح:
مقبس const = io (" //domain.com:port " ، يختار) ؛ // هذا يعمل فقط في وضع التصحيح
لم أعمل في أي وضع تصحيح ، اضطررت إلى إضافة البروتوكول:
مقبس const = io (" http://domain.com:port " ، يختار) ؛
يعمل على socket.io 2.1.1 وتفاعل أصلي 0.59.8. أحبك ningacoding 👍 👍
مرحبًا autotrof ،
حاولت استخدام 0.59.8 و socket.io التفاعلي الأصلي ، لكن لا يمكن الاتصال في بنية الإصدار.
أنا أستخدم IP والمنفذ للاتصال ،
هل تستطيع مساعدتي رجاء؟
لا أحد لا يستطيع حلها حتى الآن؟
في حالتي
react-native : 0.61.5
socket.io-client: 2.3.0 (I tried another version, 2.1.1, 2.0.1, 2.1.0)
وبالمثل عملت فقط في وضع التصحيح :(
لقد قمت بحل هذه المشكلة بتغيير console.dir()
إلى console.log()
الوظيفة console.dir()
لا تدعم وضع التحرير 😃😃
جرب هذا على android لقد نجح معي
android: label = "@ string / app_name"
android: icon = "@ mipmap / ic_launcher"
android: roundIcon = "@ mipmap / ic_launcher_round"
android: allowBackup = "false"
android :usesCleartextTraffic = "true" <- أضف هذا
التعليق الأكثر فائدة
تواجه نفس المشكلة. يعمل جيدًا عندما يكون وضع التصحيح قيد التشغيل ، ولكنه لا يعمل عند إيقاف تشغيل وضع التصحيح أو تم إنشاء ملف apk مع وضع الإصدار.