私はExpress.jsでnode.jsよりもsocket.ioを使用しています。 htmlページを提供すると、スクリプトタグにsocket.io.jsファイルのリンクがハードコードされています。 <script src="/socket.io/socket.io.js"></script>
クライアント上のSocket.ioパス、node.jsサーバーのディレクトリツリーとどのように一致させるか?
これは私のディレクトリツリーとどのように一致させるべきかわかりません。以下のようになります:
それはnode_modules」フォルダにダウン埋葬存在します。
私のindex.jsは、次のようになります。あなたはソケットポートを聴き始めるとき
const PORT = 3000;
const express = require("express");
const server = express();
const http = require("http").Server(server);
const path = require("path");
const io = require("socket.io")(http);
server.use(express.static(path.join(__dirname + "/public")));
server.use(express.static(__dirname + "/public/css"));
server.use(express.static(__dirname + "/public/js"));
server.listen(PORT, function() {
console.log("server listening on port " + PORT);
});
io.on("connection", function(socket){
console.log("user connected");
});
素晴らしい、それはそれを修正しました。 – erv