2013-02-21 5 views
3

신호기 허브에 연결하는 .net 응용 프로그램이 계속해서 다시 연결됩니다.클라이언트가 지속적으로 다시 연결합니다.

이 문제는 뭔가 다른 회사 네트워크에서만 발생하며 차단되는 것으로 판단됩니다. 같은 네트워크에서 jabbr.net 웹 사이트를 사용하려고 시도했으나 크롬에서도 작동하지 않습니다.

이 문제를 어떻게 추적 할 수 있습니까? 당신의 Web.config의 System.Diagnostics 네임 섹션 추가 기능에서 서버에 대한

enter image description here

답변

3

이 문제가 발생했습니다. https://github.com/SignalR/SignalR/pull/1553 우리는 그것을 해결하기 위해 노력하고 있습니다. 서버에서 이벤트 요청 시간이 초과되었지만 실제 http 요청은 계속 진행될 때 문제가 발생합니다. 그런 다음 longpolling 전송 및 서버가 이벤트 http 요청을 전송하여 연결을 끊습니다.

이 문제를 해결하려면 LongPollingTransport를 구체적으로 지정할 수 있습니다. 다음 릴리스에서이 문제를 해결할 것입니다.

+0

해결 방법은 많은 도움을주었습니다. – UnreliableWitness

+2

버그가 수정되어 다음 릴리스에 나옵니다. https://github.com/SignalR/SignalR/commit/0a6ff146d482470297e92ccc3e7702ee0ae1eede – davidfowl

+0

.NET 4.0에서 .NET signalr 클라이언트 버전 2.2.1.0과 동일한 문제가 있습니다. SSE를 프로토콜로 설정하여 클라이언트를 시작합니다. @davidfowl이 설명 할 때, 클라이언트는 연결, 처리, 중지 및 즉시 다시 연결, 처리, 중지의 끝없는 순서를 거칩니다. 나는 클라이언트가 LongPollingTransport와 SSE 사이를 전환하는 것을 보지 못한다. 단지 SSE로 머물러있다. 클라이언트를 시작한 후 예외/작업 오류를 감지하기 위해 ContinueWith를 첨부합니다. IIRC, ContinueWith를 제거하면 한 지점에서 도움이되었지만 계속 유지하고 Task.wait() 주변에서 예외를 처리하고 싶지 않습니다. – hexterminator

2

은 : 클라이언트에 대한

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

(I 닷넷 C 번호를 있으리라 믿고있어) 그 기록은 디버그를 통해입니다. 씁니다. 또한 연결에 대한 오류 처리기에 연결하는 것이 좋습니다. 당신은 JS 클라이언트를 사용하는 경우

이 도움이

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

희망을 통해 로그온 설정할 수 있습니다!

관련 문제