首页 > 解决方案 > Socket.io io 未定义

问题描述

我有以下代码 index.html 文件。我已经在 NPM 上安装了 socket.io 包。

<script src="/socket.io/socket.io.js"></script>
<script>
  var socket = io();
</script>

我收到以下错误:

在此处输入图像描述

更新:使用 CDN 链接,现在我在客户端控制台上收到以下错误。

在此处输入图像描述

标签: node.jssocket.io

解决方案


这可能有很多原因。我发现最常见的是您最初声明 Socket.io 的方式。

正确的设置如下所示:

const express = require('express');
const app = require('express')();
const http = require('http').createServer(app);
const io = require('socket.io')(http);

我注意到的另一个答案是使用文件的 CDN 版本是一个不正确的解决方案。如果服务器端设置正确,Socket.io 应该为此生成它自己的文件。

如果您对此有任何问题,请告诉我。


推荐阅读