したがって、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要求が存在しない何を参照してくださいこれほどまで。私たちは何を間違っていますか?
これはsignalRの問題です。それを指摘してくれてありがとう。 –