我一直在搞不懂什么是套接字。IO及其在客户端和服务器之间的整个持久通信中的作用。我脑海中不断出现的一些基本问题是:
- 是node.js和socket。IO服务器做同一件事的不同方式?像lighthttpd和apache ?
- 为什么我应该使用socket。如果我有node.js ?
- 可以使用套接字吗?使用另一种服务器端编程语言(如PHP)的io客户端
- 有使用套接字的替代方案吗?
- 是套接字。io客户端只是另一个用于websocket通信的javascript库?
谢谢:)
Socket。IO服务器接受来自Socket的连接。IO客户。这与接受来自客户端(如Internet Explorer等web浏览器)的连接的任何其他服务器(如Apache等web服务器)没有任何不同。
Node.js是一个建立在V8 JavaScript引擎之上的平台,它带有一个方便的库,通常用于web和网络应用程序。套接字。IO是一个类似Web套接字的通信包装器和RPC,它使服务器和客户端能够通过各种传输进行通信(从长轮询JSON到真正的Web套接字)。一般是Socket。IO服务器代码运行在Node.js和Socket之上的JavaScript应用程序中。IO客户端运行在web浏览器上的JavaScript中。(注意可以运行Socket。IO客户端在你的Node.js应用程序,我在过去使用作为多个Node.js应用程序之间的快速RPC。
有套接字。IO客户端可用于许多语言,是的,我相信有一个PHP,但我没有使用过它的个人。
如果你想与Socket通信。IO服务器,必须使用套接字。输入输出端。
是node.js和socket。IO服务器用不同的方式做同样的事情?
SocketIO实际上是一个I/O引擎,它允许客户端和服务器之间的实时通信,不像传统的HTTP请求。
为什么我应该使用socket。如果我有node.js ?
由于两者不同,我们不能比较。
我可以使用套接字吗?使用另一种服务器端编程语言(如PHP) ?
没有,因为socketIO服务器运行在NodeJS环境中。客户端首先发出HTTP请求,然后socketIO向客户端发送静态JS脚本。该脚本建立双向通信。但是您可以将socketIO服务器与不同的socketIO客户端实现一起使用。
是否有替代使用套接字。IO客户端?
任何socketIO客户端实现都可以完成这项工作,因为它们连接到服务器。但是要注意异步通信方式,就像在Java或PHP中一样。
是插座。IO客户端只是另一个用于websocket通信的javascript库?
是的,但是socketIO的目标是可靠性和易用性,并且尽最大努力:它为客户端选择最好的传输。
是node.js和socket。IO服务器做同一件事的不同方式?像lighthttpd和apache ?
插座。IO是node.js的框架/库
为什么我应该使用socket。如果我有node.js ?
这是一个为双向通信设计的框架,如果你想使用它
我可以使用套接字吗?使用另一种服务器端编程语言(如PHP) ?
技术是的。但是你必须重新实现socket。用另一种语言的IO服务器来匹配它。
是否有替代使用套接字。IO客户端?
很多,谷歌的websocket/实时通信在[这里放你的语言]
是插座。IO客户端只是另一个用于websocket通信的javascript库?
插座。io客户端是与套接字兼容的JavaScript库。io服务器(这也是JavaScript库,仅在服务器端,即Node.js)