2014-01-21 3 views
0

매우 간단한 예제로 SignalR을 평가하여 서버에서 클라이언트를 호출 할 수 있습니다. 빈 버전의 Visual Studio 웹 응용 프로그램 인 Visual Studio 2012에 Nuget을 사용하여 최신 버전의 SignalR을 설치했습니다. 시나리오는 다음과 같습니다. 게시 버튼을 클릭하여 코드에서 메시지를 푸시하는 aspx 게시자가 있습니다. 메시지를 수신해야하는 html 클라이언트가 있습니다. 아래의 코드는 메시지가 클라이언트로 전달되지 않은 이유를 잘 모릅니다. 오류 메시지가 없습니다. SignalR Owin 시작은 ok라고합니다./Signalr/hubs url을 입력하면 SignalR 메시지가 나타납니다.허브 외부의 SignalR 호출 클라이언트가 작동하지 않습니다.

코드는 다음과 같습니다 허브 :

namespace SignalRTest2 
{ 
    public class TestHub : Hub 
    { 

     // not needed?? 
    } 
} 

제작사 :

public partial class Publisher : System.Web.UI.Page 
{ 
    protected void cmdBroadcast_Click(object sender, EventArgs e) 
    { 
     var testHub = GlobalHost.ConnectionManager.GetHubContext<TestHub>(); 
     testHub.Clients.All.clientSendMessage(txtMessage.Text); 
    } 
} 

클라이언트 :

<head> 

<script src="Scripts/jquery-1.6.4.min.js"></script> 
<script src="Scripts/jquery.signalR-2.0.1.min.js"></script> 
<script src="/signalr/hubs"></script> 

<title></title> 

<script type="text/javascript"> 

    //Proxy created on the fly 
    var myHub = $.connection.testHub; 

    // Declare a function on the chat hub so the server can invoke it 
    myHub.clientSendMessage = function (message) { 
     //$("#messages").append("<li>" + message + "</li>"); 
     alert(message); 
    }; 

    $.connection.hub.start() 

</script> 

+2

문서를 확인하십시오. myHub.client.clientSendMessage는 여러분이 원하는 것입니다. – davidfowl

+0

고마워요. ;) 어떻게 든 나는 대답으로 표시 할 수 없다? – user1829319

답변

1

를 체크 아웃,375,321 0. myHub.client.clientSendMessage는 원하는 것입니다.

관련 문제