【发布时间】:2023-03-16 08:56:01
【问题描述】:
我使用 Node.js 在端口 8888 上设置了 Websocket server。我还有一个与 Websocket 后端(聊天服务器)交互的接口。
当使用浏览器访问服务器时,如何提供 index.html(及其 CSS/JS 文件)?
【问题讨论】:
标签: javascript node.js
我使用 Node.js 在端口 8888 上设置了 Websocket server。我还有一个与 Websocket 后端(聊天服务器)交互的接口。
当使用浏览器访问服务器时,如何提供 index.html(及其 CSS/JS 文件)?
【问题讨论】:
标签: javascript node.js
这里有一些关于如何设置 websocket 服务器的要点。为此提供一个网络应用程序:
这里也有类似的问题:
【讨论】:
如果您不想使用socket.io,而是使用websocket 包,则可以将其与Express 结合使用,如下所示:
// app.js
var WebSocketServer = require('websocket').server;
var express = require('express');
var app = express();
var server = app.listen(8888);
var wsServer = new WebSocketServer({ httpServer : server });
// this will make Express serve your static files
app.use(express.static(__dirname + '/public'));
// the rest of your code
wsServer.on('request', function(r) { ...
express.static 将负责提供您的 HTML/CSS/JS 文件。您传递的参数是这些文件所在的目录(在这种情况下,目录public/ 相对于app.js 所在的位置)。
【讨论】:
ws:// 地址从公共 IP 更改为 localhost,但它不起作用。这是不可能的,还是我做错了什么?
new WebSocket('ws://' + location.host)。