HTTP 和 SignalR
HTTP and SignalR
我最近正在学习 .Net 中的网络套接字,并且刚刚发现 SignalR 就使用何种连接的抽象而言似乎好得令人难以置信,而且似乎有一些不同的信号器客户端很棒的语言。
在我当前的项目中,不同的资源通过 RESTful API 公开,根据我对 websockets 的理解,客户端需要通过 HTTP [=18= 升级到 web 套接字连接]. signalR 会处理所有这些握手吗?
如果初始 request/response 来自 GET 请求以检索特定资源,但他们选择升级到套接字连接,除了表示确认的响应之外,服务器是否给他们任何类型的响应打开一个网络套接字连接,或者握手是在该特定资源的信息实时更新之前发生的吗?
您认为 signalR 是否具有可扩展性,而不是通过像 STOMP 这样有大量客户端库的协议来实现?
你把事情搞得太复杂了。一个典型的使用signalr的例子是:
一个 html 文件使用 JavaScript 在页面加载时连接到信号器服务器。我们称之为信号器客户端。
用 c# 编写的信号服务器。它可以是 winform 或控制台或服务。
signalr服务器可以调用位于同一服务器甚至不同服务器的任何dll、web服务或webapi。
然后,客户端可以调用信号器服务器中定义的任何函数。服务器可以为特定客户端或客户端组调用客户端中定义的任何函数。
此外,客户端 x 也可以调用客户端 y 函数。
您实际上可以忘记 Web 套接字,signalr 选择最适合您的传输协议。如果它在服务器和客户端都可用,它将选择 Web 套接字。
我最近正在学习 .Net 中的网络套接字,并且刚刚发现 SignalR 就使用何种连接的抽象而言似乎好得令人难以置信,而且似乎有一些不同的信号器客户端很棒的语言。
在我当前的项目中,不同的资源通过 RESTful API 公开,根据我对 websockets 的理解,客户端需要通过 HTTP [=18= 升级到 web 套接字连接]. signalR 会处理所有这些握手吗?
如果初始 request/response 来自 GET 请求以检索特定资源,但他们选择升级到套接字连接,除了表示确认的响应之外,服务器是否给他们任何类型的响应打开一个网络套接字连接,或者握手是在该特定资源的信息实时更新之前发生的吗?
您认为 signalR 是否具有可扩展性,而不是通过像 STOMP 这样有大量客户端库的协议来实现?
你把事情搞得太复杂了。一个典型的使用signalr的例子是:
一个 html 文件使用 JavaScript 在页面加载时连接到信号器服务器。我们称之为信号器客户端。
用 c# 编写的信号服务器。它可以是 winform 或控制台或服务。
signalr服务器可以调用位于同一服务器甚至不同服务器的任何dll、web服务或webapi。
然后,客户端可以调用信号器服务器中定义的任何函数。服务器可以为特定客户端或客户端组调用客户端中定义的任何函数。
此外,客户端 x 也可以调用客户端 y 函数。
您实际上可以忘记 Web 套接字,signalr 选择最适合您的传输协议。如果它在服务器和客户端都可用,它将选择 Web 套接字。