gpt4 book ai didi

javascript - node.js:socket.io 与 express.static

转载 作者:数据小太阳 更新时间:2023-10-29 04:18:35 24 4
gpt4 key购买 nike

我正在运行以下 server.js:

module.exports = server;

var express = require('express');
var fs = require('fs');

var server = express.createServer();

var port = 58000;
server.listen(port);

var io = require('socket.io').listen(server);

server.use(express.static('/', __dirname + '/../public'));

server.use(express.logger());

io.on('connection', function(client){
console.log('new client connected ' + client);
client.on('message', function(){
console.log('client wants something');
});
});

用于/public 子文件夹中文件的简单 express.static 服务器,以及 socket.io 功能。使用此设置,对“socket.io.js”文件的任何请求都会失败,即

http://localhost:58000/socket.io/socket.io.js

返回 404 错误(找不到文件)。静态文件服务器工作正常。如果我只是使用“http”模块而不是“express”(注释掉 express.static 和 express.logger 行),socket.io.js 将得到正确服务。如何结合这两种功能?

最佳答案

Express 3.0.0(最新)改变了它的 API。

Here是一个与您的问题非常相似的问题。

var express = require('express')
, http = require('http');

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

...

server.listen(8000);

关于javascript - node.js:socket.io 与 express.static,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10231688/

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