源代码

https://github.com/xlb378917466/Chat.Server

1.使用控制台程序来寄宿SignalR的服务端,这需要借助于Owin中间件

2.实现一个服务端的ChatHub

 public class ChatHub : Hub
    {
        public void Send(string name, string message)
        {
            Clients.All.addMessage(name, message);
        }

        public override Task OnConnected()
        {
            Console.WriteLine("Client connected: " + Context.ConnectionId);

            return base.OnConnected();
        }

        public override Task OnDisconnected(bool stopCalled)
        {
            Console.WriteLine("Client disconnected: " + Context.ConnectionId);
            return base.OnDisconnected(stopCalled);
        }

    }

 3.构建一个Chat.WebClient,,可以通过网页来通信,这个例子支持断开重连的问题解决

这个地方容易碰到的问题就是,

服务端的SignalR与客户端的版本不一致导致连接出错,

另一个就是js中大小写的问题,比如我在server端的HUB是ChatHub,但是js里只能用 $.connection.chatHub,否则报错

 

SignalR 自寄宿

4.构建CS通信客户端,你需要借助于Microsoft.AspNet.SignalR.Client

通过Microsoft.AspNet.SignalR.Client构建一个代理,通过代理来发送消息

SignalR 自寄宿

 

signalr的MSDN技术文档

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-08
猜你喜欢
  • 2022-12-23
  • 2021-10-18
  • 2021-11-29
  • 2022-12-23
  • 2022-12-23
  • 2022-02-02
相关资源
相似解决方案