Socket.io-client: Tidak dapat terhubung pada React-Native (hanya dalam Mode Debug)

Dibuat pada 3 Jan 2019  ·  19Komentar  ·  Sumber: socketio/socket.io-client

### Yang kamu ingin:

  • [x] laporkan _bug_
  • [ ] meminta _fitur_

### Perilaku saat ini
Saya tidak dapat terhubung melalui socket io ke server saya, waktu habis.

### Langkah-langkah untuk mereproduksi (jika perilaku saat ini adalah bug)
Dalam reaksi-asli:

```js
impor io dari 'socket.io-client';

const BACKEND = 'url server socketio saya'

const sock = io(BACKEND, { transports: ['websocket'], forceNew: true });
sock.on('terhubung', () = {
debugger;
})
```

Log debug terlihat seperti:

Tidak ada yang hanya dipicu oleh batas waktu

### Perilaku yang diharapkan
Saya berharap dapat terhubung ke server socketio saya, dengan cara yang sama seperti yang saya lakukan di browser web.

### Mempersiapkan

  • OS: Android 8.0
  • browser: React-asli
  • versi socket.io: 2.1.1 (tetapi mencoba versi yang berbeda dengan hasil yang sama)

Komentar yang paling membantu

Menghadapi masalah yang sama. Berfungsi dengan baik saat mode debug aktif, tetapi tidak berfungsi saat mode Debug dimatikan atau apk dibuat dengan mode rilis.

Versions:
"react": "16.8.2",
"react-native": "0.58.4",
"socket.io-client": "^2.2.0"

Semua 19 komentar

Saya membuka kembali masalah ini, ini sedikit berbeda.

Saya mencoba menginstal socket io pada instalasi asli reaksi baru 0.57.8 dan saya menghadapi masalah ini lagi.

Menghadapi masalah yang sama. Tidak berfungsi di RN versi 0.57.3. Berfungsi dengan baik saat terhubung ke server lokal. Tapi itu tidak terhubung ke server backend utama.

Bereaksi Asli: 0.57.8
Bereaksi: 16.6.3
socket.io-klien: 2.0.4

Ini berhasil untuk saya. Juga perlu mengubah versi socketio js di sisi server menjadi 2.0.4

Saya menghadapi masalah yang sama

Masalah @ jr-k tetap ada setelah @anooj1483 diretas menurut https://github.com/socketio/socket.io-client/issues/1245#issuecomment -451285245 di #1245
Itu sama untukku

Menghadapi masalah yang sama. Berfungsi dengan baik saat mode debug aktif, tetapi tidak berfungsi saat mode Debug dimatikan atau apk dibuat dengan mode rilis.

Versions:
"react": "16.8.2",
"react-native": "0.58.4",
"socket.io-client": "^2.2.0"

Masalah yang sama seperti orang lain. Bekerja dengan sempurna jika debugging.
Versi Aplikasi Asli Bereaksi:
"bereaksi": "16.5.0",
"react-asli": "^0.58.4",
"socket.io-client": "^2.1.1"

Versi Server:
"socket.io": "2.0.4"

socket.io-client: 2.0.4 bekerja untuk saya.

Saya mendapatkan kesalahan saat menggunakan 2.0.4 + ReactNative

TypeError: undefined bukan objek (mengevaluasi 'n.protocol')

image

MEMPERBAIKINYA untuk saya ketika saya menambahkan Host: port seperti selanjutnya dalam mode debug:

const socket = io(" //domain.com:port ", opts); // ini hanya berfungsi dalam mode debug

tidak berfungsi dalam mode NO debug, saya harus menambahkan protokol:

const socket = io(" http://domain.com:port ", opts);

Saya memiliki masalah yang sama
react-native : 0.57.8 ,
socket-io-client : 2.2.0
hanya berfungsi ketika debug diaktifkan

apakah ada yang menemukan perbaikan untuk ini? saya telah mencoba beberapa versi paket yang berbeda tetapi tidak berhasil

ada banyak penyebab kesalahan/bug ini, milik saya hanya satu dari banyak.

coba versi terakhir dari github, seperti ini, selesaikan masalah saya dengan RN Android:

npm i socketio/engine.io-client#3.3.2 -S

Bersulang

MEMPERBAIKINYA untuk saya ketika saya menambahkan Host: port seperti selanjutnya dalam mode debug:

const socket = io(" //domain.com:port ", opts); // ini hanya berfungsi dalam mode debug

tidak berfungsi dalam mode NO debug, saya harus menambahkan protokol:

const socket = io(" http://domain.com:port ", opts);

ini bekerja pada socket.io 2.1.1 dan react-native 0.59.8. sayang kamu @ningacoding 👍 👍

Hai @autotrof ,
Saya mencoba dengan react-native 0.59.8 dan socket.io, tetapi tidak dapat terhubung di build rilis.
Saya menggunakan ip dan port untuk terhubung,
Bisakah kamu menolongku?

Ada yang belum bisa menyelesaikan?
Dalam hal ini

react-native : 0.61.5
socket.io-client: 2.3.0 (I tried another version, 2.1.1, 2.0.1, 2.1.0)

Saya juga hanya dalam mode debug yang berfungsi :(

Saya memecahkan masalah ini, ubah console.dir() menjadi console.log()
Fungsi console.dir() tidak mendukung mode rilis

coba ini di android ini berhasil untuk saya

android:nama= ".MainApplication"
android:label= "@string/nama_aplikasi"
android:icon= "@mipmap/ic_launcher"
android:roundIcon= "@mipmap/ic_launcher_round"
android:allowBackup= "salah"
android:usesCleartextTraffic= "benar" <-- tambahkan ini

Apakah halaman ini membantu?
0 / 5 - 0 peringkat