klien terus-menerus terhubung kembali

Aplikasi .net saya yang terhubung ke hub signalr terus terhubung kembali.

Masalah ini hanya terjadi pada jaringan perusahaan tertentu lainnya yang membuat saya yakin ada sesuatu yang diblokir. Saya sudah mencoba menggunakan situs jabbr.net dari jaringan yang sama dan ini juga tidak berhasil (di chrome).

Bagaimana cara melacak/memperbaiki masalah ini?

masukkan deskripsi gambar di sini


person UnreliableWitness    schedule 21.02.2013    source sumber


Jawaban (2)


Saya pikir Anda mengalami masalah ini https://github.com/SignalR/SignalR/pull/1553. Kami sedang berupaya memperbaikinya. Masalah terjadi ketika server mengirimkan permintaan peristiwa waktu habis tetapi permintaan http sebenarnya masih berjalan. Apa yang kemudian terjadi adalah transportasi longpolling dan server mengirimkan peristiwa permintaan http untuk memperebutkan koneksi.

Untuk mengatasinya, Anda dapat menentukan LongPollingTransport secara spesifik. Kami akan mencoba memperbaikinya untuk rilis berikutnya.

person davidfowl    schedule 21.02.2013
comment
Bug telah diperbaiki dan akan ada di rilis berikutnya github.com/SignalR/SignalR/commit/ - person davidfowl; 22.02.2013
comment
Saya memiliki masalah yang sama dengan klien pemberi sinyal .NET versi 2.2.1.0 di bawah .NET 4.0. Saya memulai klien dengan menetapkan SSE sebagai protokol. Ketika apa yang dijelaskan oleh @davidfowl terjadi, klien melewati rangkaian tanpa akhir yaitu menyambungkan, membuang, menghentikan, dan segera menyambungkan kembali, membuang, menghentikan. Saya tidak melihat klien beralih antara LongPollingTransport dan SSE - tetap menggunakan SSE. Setelah memulai klien, saya melampirkan ContinueWith untuk mendeteksi pengecualian/kesalahan Tugas. IIRC, menghapus ContinueWith membantu pada satu titik tetapi saya ingin menyimpannya dan tidak ingin menangani pengecualian di sekitar Task.wait(). - person StackUndefined; 20.11.2016
comment
Jika Anda menentukan transportasi, transportasi itu tidak akan mundur. - person davidfowl; 21.11.2016
comment
Sungguh aneh bagaimana saya mendapatkan masalah ini hanya ketika saya LAKUKAN menentukan ClientTransport (baik ServerSentEventsTransport atau LongPollingTransport) sebelum memulai HubConnection. Apa alasannya? - person Nii Laryea; 23.01.2018

Untuk server Anda, di bagian system.diagnostics web.config Anda, tambahkan:

<sharedListeners>
  <add name="SignalR" 
       type="System.Diagnostics.TextWriterTraceListener" 
       initializeData="signalr.log.txt" />
</sharedListeners>

Untuk klien Anda (saya berasumsi .net C#), pencatatannya dilakukan melalui Debug.Writes. Selain itu, saya sarankan untuk menghubungkan ke pengendali Kesalahan untuk koneksi Anda.

Jika Anda menggunakan klien JS, Anda dapat mengaktifkan login melalui

// Non dynamically made connection
connection.logging = true;
// Dynamically made connection
$.connection.hub.logging = true

Semoga ini membantu!

person N. Taylor Mullen    schedule 21.02.2013