2012-04-26 13 views
2

したがって、signalRを使用したメッセージングシステムを実装しています。 最新のNugetを使ってsignalRを追加しました。 アプリケーションはIIS 7でホストされています。すべてのURL書き換えルールが無効になっています。 Messages.jsのSignalRが開始時にWebリクエストを送信しない

<script src="@Url.Content("~/Scripts/jquery-1.7.1.min.js")" type="text/javascript"></script>  
<script src="@Url.Content("~/Scripts/jquery.signalR.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/signalr/hubs")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/Messages/Messages.js")" type="text/javascript"></script> 

内容::

$(function() { 
    var messages = $.connection.messages; 

    messages.showPopUp = function (message) { 
     console.log("test"); 
    }; 

    $.connection.hub.start(function() { 
     console.log('connected'); 
    }); 
}); 

呼び出さ


    [HubName("messages")] 
    public class Messages : Hub 
    { 
     public void Send(string message) 
     { 
      Clients.showPopUp(message); 
     } 
    } 

は、マテリアライズド・ビュー内のファイルが含まれています。私たちは、ハブを使用している

は、次のコードを参照してくださいメッセージが送信されたとき:

$.connection.messages.send($('#Body').val()); 

私たちは何を得ますか:Google Chromeコンソールではエラーはありません。

我々は/signalr/hubsが存在し、それがない場合、また/signalr/negotiateは、以下のJSONを返すチェックしています:私たちは送信呼び出すと

{"Url":"/agenda/signalr","ConnectionId":"a4215b26-32f1-4a52-bf6d-4de096298a07","TryWebSockets":false,"WebSocketServerUrl":null,"ProtocolVersion":"1.0"} 

我々は、コンソールに以下の取得:

キャッチされないSignalR:データを送信する前に接続を開始する必要があります。 .send()の前に)(.startコール

我々はsignalRをデバッグする場合は、我々はスタートが呼ばれましたが、我々はjQueryのAJAX呼び出しのエラーや成功をヒットしないと何もXHTML要求が存在しない何を参照してくださいこれほどまで。私たちは何を間違っていますか?

No Web requests

答えて

1

ソリューション

にすべて

$.ajax(url, {options}); 

を変更

$.ajax({ url: url, other options...}); 
関連する問題