我想启用WebSocket并将其与SignalR一起使用。我有一个实例,它是我的API和我的前端应用程序(AngularJS)的另一个实例。我应该在双方(API和前端)或仅API侧启用WebSocket吗?
背后的原因是我不想支付两个标准Azure计划(这是获得无限WebSocket连接的唯一方法)。
答案 0 :(得分:2)
Websocket是一种定义全双工通信通道的协议。为了使应用程序利用websocket工作,浏览器(前端)和服务器(后端)必须利用此协议。
当浏览器(或通信发起者)使用websocket建立与主机的连接时,初始握手在TCP上类似于HTTP,并且连接类型设置为"升级"并且升级字段设置为" websocket"。如果响应服务器不理解"升级"请求,连接将失败。
在某些情况下,如果无法升级到websocket,则可以使用此升级请求回退到HTTP上的传统长轮询。
可以在wikipedia和HTML5 tutorials page找到更多信息。