当前位置: 首页 > 知识库问答 >
问题:

默认情况下,socketIO客户端监听哪个端口?

狄誉
2023-03-14

当您没有在客户端的io.connect()函数中指定端口时,客户端将监听哪个端口?

例如:

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

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

我用javascript编写了用于测试的客户端程序,当我没有指定端口时,它可以工作。

共有1个答案

万博涛
2023-03-14

它在服务器侦听的端口上侦听。假设您将服务器设置为监听端口8080。然后在http://localhost:8080加载页面,服务器返回包含与套接字相关的JS代码的页面。

  1. 如果您没有像var socket=io.connect()中那样指定任何端口或主机;中所示,则默认为当前页面的主机和端口。
  2. 如果只指定与当前主机相同的主机,则默认为当前主机的端口。
  3. 如果只指定与当前主机不同的主机,则如果协议是HTTP,则默认为端口80。如果协议是HTTPS,则端口默认为443.

下面是url.js解析器的相关代码。

 类似资料:
  • 我有一个Tomcat 9.0.60服务器,运行在Linux上的OpenJDK 1.8.0上,其中netstat-ltpn | grep java显示它侦听的端口不止配置的端口: (我从该列表中删除了所有配置的端口。) 因此,我认为有几个应用程序也打开了“他们自己的”套接字,他们听。我想找出每个端口的哪个Java线程正在侦听,这样我就可以进一步找出应用程序,也许它仍然是必需的,或者只是开发人员忘记的

  • 我正在尝试连接到一个用VB编写的应用程序,使用Jintegra从JAVA访问它。因为我不知道如何使用Eclipse中的JINTEGRA_NATIVE_模式,所以我不得不使用cmd和Javac。。。无论如何,每次我尝试运行链接时都会遇到这个恼人的错误(没有实际的代码,只有指向其他应用程序的链接。我在这里阅读了所有其他相关问题,却找不到任何可能有用的东西..我对此完全是新手..如果你能帮忙,请在这里帮

  • 本文向大家介绍修改Oracle监听默认端口号1521的方法,包括了修改Oracle监听默认端口号1521的方法的使用技巧和注意事项,需要的朋友参考一下 前言 大家都知道在oracle中,默认的监听端口号为1521,一旦有人扫描出这个端口号就会知道此服务器为oracle数据库服务器,存在极其大的安全隐患,下面在这里,教大家如何修改oracle默认端口号为9999 方法如下 1、查看监听状态 可以看到

  • 问题是:在java中,您可以使用ServerSocket(0)在服务器上创建一个套接字,它会选择一个随机端口进行监听。但是,当您在客户机上创建套接字以使用套接字(addr,port)发送消息时,显然无法确定您需要发送到服务器上的哪个端口。除了基本的“如果你输入0,它将选择一个随机端口”之外,我在网络搜索中找不到关于这个选项的任何信息。是否有人知道或拥有可以从客户端解释这个场景应该是什么样子的资源?

  • 默认情况下,我们的路由器是Yaf_Router, 而默认使用的路由协议是Yaf_Route_Static,是基于HTTP路由的, 它期望一个请求是HTTP请求并且请求对象是使用Yaf_Request_Http

  • 所以我有一个使用 socket.io 和 expressjs 的 nodejs 应用程序 我使用端口“3000”作为Express应用程序,使用端口“8080”作为套接字应用程序 > 这两种服务是否可以使用相同的端口?(express和socket.io) 当我想从客户端连接到套接字时,我使用以下代码: http://localhost:8080套接字 什么是连接到它的正确方式(我在互联网上的教程