客户端服务器Websocket

时间:2018-11-05 14:54:35

标签: node.js websocket socket.io client-server

我尝试使用socket.io制作客户端服务器应用程序。

Socket.io服务器似乎可以工作,但是客户端无法连接到它。我得到的错误是关于'/socket.io/socket.io.js'的,就像它无法加载一样。

这是我的问题

  • 是否必须将服务器和客户端放在与官方演示中相同的文件夹中?
  • 我们可以制作一个没有express的nodejs socket.io服务器吗?

3 个答案:

答案 0 :(得分:0)

根据项目的设置方式,您需要创建2个服务器文件,其中1个用于应用程序,一个用于websocket,并且每当用户打开该应用程序时,它都应该打开(并告知在何处尝试打开)连接)到websockets服务器的连接。在我的websockets应用程序上,我有运行在localhost:3000上的应用程序,而websockets服务器在localhost:3001上运行(并告诉应用程序在3001上寻找服务器),因此,实际上您不需要将服务器文件放在同一位置文件夹,它们可以位于您计算机的两个相对端,只要应用程序指向服务器即可,您就可以了,一旦打开连接,websocket服务器将看到客户端,它应该可以工作!让我知道这是否有意义。

答案 1 :(得分:0)

  1. 否,您可以从其他来源(例如cdn)下载socket.io前端库。确保安装了正确的版本。

  2. 是的,您可以不加表达。 Express只是用于创建socket.io服务器的另一种选择。

例如,当前在我的项目中,该项目是在另一个后端节点框架中编写的,我正在使用下面的代码来建立socket.io服务器。

const io = require("socket.io")(2337); 
io.on("connection", socket =>
  // some code
)

答案 2 :(得分:0)

我解决了服务器和客户端之间的websocket通信问题。

在检查了我的html客户端文件后,我在控制台上看到了此错误消息“ ReferenceError:未定义io ”。

我通过Google搜索该错误,发现了this