gpt4 book ai didi

node.js - 带有nodejs的socket.io找不到所需的js文件

转载 作者:太空宇宙 更新时间:2023-11-04 01:15:56 24 4
gpt4 key购买 nike

我将我的应用程序部署到了 no.de。我在使用 socket.io 时遇到的第一个问题是我必须更改它正在监听的端口。

  io = require('socket.io').listen(3000),

更改端口后,现在找不到所需的脚本 socket.io.js

 script(src="/socket.io/socket.io.js")

我也尝试在端口中给出绝对路径,但这不起作用。在本地主机上它工作得很好,所以我真的很困惑如何解决这个问题。

 GET http://twtups.no.de/socket.io/socket.io.js 404 (Not Found)
Uncaught ReferenceError: io is not defined

再看一下我的日志就会发现//这是来自express,我认为,不知道是否相关

 Warning: connection.session() MemoryStore is not
designed for a production environment, as it will leak
memory, and obviously only work within a single process.
[ Jan 11 11:10:09 Method "start" exited with status 0. ]

更新,像这样工作

var app = express.createServer();
var io = require('socket.io').listen(app);
app.listen(80);

最佳答案

您使用的是什么Express 版本

API 已从 Express 2.x 更改为 3.x,因此答案位于 Migrating from 2.x to 3.xSocket.IO 兼容性 部分。维基百科:

Socket.IO 的 .listen() 方法采用 http.Server 实例作为参数。
从 3.x 开始express() 的返回值不是 http.Server 实例。要让 Socket.IO 与 Express 3.x 配合使用,请确保手动创建 http.Server 实例并将其传递给 Socket.IO 的 .listen() 方法:

var app = express()
, http = require('http')
, server = http.createServer(app)
, io = require('socket.io').listen(server);

server.listen(3000);

关于node.js - 带有nodejs的socket.io找不到所需的js文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8817708/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com