socketIO客户端默认监听哪个端口?

Siv*_*der 7 heroku node.js socket.io

如果未在客户端的io.connect()函数中指定端口,客户端将侦听哪个端口?

例如:

var socket = io.connect('http://example.com/'); // listening to port 80?
Run Code Online (Sandbox Code Playgroud)

我问的原因是因为我在heroku上部署了这个应用程序的服务器端.前端是IOS应用程序.我用于前端的目标C socketIO库(https://github.com/pkyeck/socket.IO-objc)要求我指定一个端口.但是我不确定我应该听哪个端口,因为这在服务器端不是静态的.

我用javascript编写客户端程序进行测试,当我没有指定端口时它可以工作.

任何帮助将非常感激.

Eye*_*Eye 11

它侦听服务器侦听的端口.想象一下,您将服务器设置为侦听端口8080.然后加载页面,http://localhost:8080服务器返回包含套接字相关JS代码的页面.

  1. 如果未指定任何端口或主机var socket = io.connect();,则默认为当前页面的主机和端口.
  2. 如果仅指定与当前主机相同的主机,则默认为当前主机的端口.
  3. 如果仅指定与当前主机不同的主机,则80如果协议为HTTP ,则默认为port .如果协议是HTTPS,则端口默认为443.

这是url.js解析器的相关代码.