javascript - 使用 Node.js 和 Socket.IO 提供静态文件

标签 javascript node.js socket.io

虽然我已经在 SO 和网上浏览了一些答案,但我没有找到我要找的东西。我也是 Node.js 的新手,所以也许这就是问题所在。

这是启动 Node 和 Socket.IO 所需的代码:

var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);

接下来我需要的是这样的:

http.use(app.static(__dirname + "/public"));

“app has no method 'static'”是我的问题。我尝试了其他几种组合来获得我在网上阅读的有关包括静态 css 和 js 以及将 httpServer 实例提供给 Socket.IO 的信息。

谢谢:)

最佳答案

试试这个:

var express = require('express');
var path = require('path');
var app = express();
app.use(express.static(path.join(__dirname, 'public')));

express.static 是您正在寻找的方法,而不是 app.static,尽管它们看起来相同。

另请参阅 this有关同时使用 socket.io 和 express 的应用程序示例。请注意,他们仅将 http 服务器用于 socket.io,而不是为网页提供服务。

关于javascript - 使用 Node.js 和 Socket.IO 提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24852222/

相关文章:

javascript - 使用 React-Redux 时更新输入字段的状态

javascript - 使用 Chrome Extensions API 以编程方式更改 Chrome 选项卡颜色

javascript - d3 - tickFormat + 可从闭包访问的可变变量存在问题?

node.js - 来自 socket.io 的新 cookie 值不起作用?

javascript - CORS - 状态 200 但 Chrome devtools 控制台中出现错误

javascript - 我什么时候应该在独立的 node.js 上使用 express.js

javascript - 在共享主机上部署 nodejs 文件

node.js - Twilio:如何通过 API 获取编程聊天统计信息?

javascript - Socket.io 无缘无故地恢复到 XHR/JSONP 轮询

javascript - 如何在 socket.io 中获取所有连接的客户端