2017-10-13 70 views

回答

0

服务器套接字通过服务器...,保持听来在一个循环的插座要求用...和WebSocket的发送到服务器套接字的请求,并结合两个设备之间的连接...

0

如果你有/想要有网络客户端,WebSocket将被要求,因为没有从基于浏览器的JavaScript访问'常规'TCP(或UDP)套接字(我假设你2017年不需要Flash,SilverLight或Java Applets)。由于端口号的原因,WebSocket并不是特殊的,但它因协议而特殊:WebSocket连接以普通的HTTP连接开始,之后重新配置,它为浏览器世界设计,甚至能够遍历HTTP代理。建立连接后,它提供了一个全双工双向消息流,非常适用于聊天应用程序。

因为是一个网络事物,如果你被允许,你可以简单地使用端口80。

1

webSockets可以共享与您的Web服务器相同的端口,这是一种常用配置。这起作用的原因是因为webSocket如何建立连接(所有webSocket连接都是通过HTTP请求启动的)。它的工作原理是这样的:

  1. 客户端发出一个头指定他们想“升级”到WebSocket协议,并发送安全相关的头一个HTTP请求到Web服务器。
  2. Web服务器看到升级请求,并且如果支持启用webSocket连接,它将响应101请求(切换协议)和另一个安全相关头。

  3. 客户端获得接受的升级并且两端都切换到webSocket协议,并且使用HTTP协议启动的原始TCP套接字现在使用webSocket协议。

以这种方式,相同的端口和webServer可用于常规HTTP请求或webSocket连接请求。

对于聊天应用程序,通常使用webSocket连接,因为它是一个连续的连接,更容易让服务器直接向聊天应用程序中常需要的客户端发送信息。

要了解有关webSocket连接和服务器如何工作的更多信息,请参阅MDN上的此参考:Writing WebSocket servers,其中显示了启动webSocket连接的分步过程。

+0

@RobinSharma - 你为什么删除接受的答案?你的问题没有回答吗?如果是这样,你还有什么困惑? – jfriend00

相关问题