2013-02-27 4 views
3

IIS (또는 다른 ASP.NET 웹 서버)에서 호스팅되는 ASP.NET 응용 프로그램에 WebSocket (SignalR) 클라이언트를 삽입하지 않고도이 클라이언트를 작성할 수 있습니까?ASP.NET이없는 SignalR 웹 클라이언트?

예를 들어, 사용자 정의 허브가있는 자체 호스팅 SignalR 서버가있는 경우 "순수한"Javascript 웹 클라이언트에서 호출 할 수 있습니까?

이 경우 ~/signalr/hubs/ 폴더에 런타임에 생성 된 "마법"스크립트가있는 <script src="~/signalr/hubs" type="text/javascript" /> 부분이 없습니다.

답변

6

SignalR을 작동 시키려면 asp.net 응용 프로그램이 필요하지 않습니다. 일반 html 페이지를 생성하고 여전히 SignalR 서버와 통신 할 수 있습니다. Silverlight, Windows Phone 또는 다른 클라이언트를 사용하여 SignalR 서버와 통신 할 수도 있습니다. 현재 지원되는 많은 정보가 있으며 타사에서 개발 한 것 (예 : Android, ios, 노드 등)이 많습니다.

당신이 "순수한"자바 스크립트 클라이언트라고 말하면 나는 JQuery와 같은 제 3 자 라이브러리가 없다고 가정하고 있습니다.이 경우 SignalR은 현재 JQuery없이 작동하지 않지만 JQuery에 의존하지 않는 클라이언트는 파이프 라인에 있습니다 (https://github.com/SignalR/SignalR/issues/372).

ASP.NET Owin을 사용하여 자체 호스팅 서버를 만들 수 있습니다.

편집 : 자체 호스팅 서버를 사용하려면 응용 프로그램에서 상호 도메인을 사용하도록 설정해야합니다. 답변을 참조하십시오 : SignalR: Error during negotiation request: undefined

+0

답장을 보내 주셔서 감사합니다. 여전히 : 클라이언트 측 자바 스크립트 코드는'~/signalr/hubs /'에있는 스크립트를 사용하지 않고 SignalR Hub 메소드를 호출하는 것처럼 보이게 할 수 있습니까? jQuery 사용이 허용되며 jQuery 용 SignalR 모듈 (예 : jquery.signalR-1.0.0.min.js)도 사용할 수 있습니다. – Osi

+0

그래서 "일반 HTML 페이지를 만들고 여전히 SignalR 서버와 통신"해야합니다. 불행히도 그것에 대해 어떤 문서도 찾지 못했습니다. – Osi

+1

SignalR 위키를 확인하십시오. 허브 프록시 및 교차 도메인 지원이없는 허브 메소드 호출 : https://github.com/SignalR/SignalR/wiki/SignalR-JS-Client-Hubs-%28No-Proxy%29. 크로스 도메인은 웹 소켓에서도 작동합니다. –