我想能夠發送消息到特定的客戶端,我有工作代碼,但我無法找到一種方法來識別用戶,因爲在每個頁面加載/刷新客戶端ID會改變,所以我不能依靠那個。 我試圖追加一個查詢字符串到連接,但我只能找到相同的上下文的查詢字符串。SignalR 1.0 - 發送數據到一個特定的客戶端
這是我的樞紐,發送方法中我希望能夠以匹配在發送消息的點發送到特定連接ID的ID:
public class Chat : Hub
{
public string addMsg()
{
return "";
}
public void Send(string message, string id)
{
Clients.Client(Context.ConnectionId).receiveMessage(message);
}
}
這裏是我的客戶端代碼,我想通過發送消息的人的ID到服務器發送方法,並使用其他連接的用戶的查詢字符串值匹配它到我發送的ID。
var chat = $.connection.chat;
chat.client.receiveMessage = function (message) {
alert("Received from server: " + message);
};
chat.addMsg = function (message) {
};
$("#sendMessage").click(function() {
chat.server.send($('#newMessage').val(), 6);
});
$.connection.hub.qs = "id=1";
$.connection.hub.start().done(function() {
var myClientId = $.connection.hub.id;
var qs = $.connection.hub.qs;
});
我希望我的問題是有道理的,我一直在努力,現在破解這一段時間,下面是一些鏈接到一些我已經習慣了到現在我在文章中,我只是缺少拼圖的最後一塊,請去容易對我:)
http://weblogs.asp.net/davidfowler/archive/2012/11/11/microsoft-asp-net-signalr.aspx
SignalR- send data to a specific client
https://github.com/SignalR/SignalR/wiki/QuickStart-Hubs
好吧,謝謝你,我懷疑可能是這種情況。 – stickleback14