実現したいこと
私が現在ボードゲーム作成のために使用しているjsファイルにsocket.ioを使ってroom機能を付与したいです。
ちなみにhtmlファイルではなくpugファイルを使用しています。
発生している問題
最後に載せている参考サイトのプログラムをうまく組み込ませてroom機能を実装しようとしてもサーバーが起動した途端落ちてしまったり、プログラムの中身が表示されてしまったりしてしまいます。
該当のソースコード
js
1const express = require("express"); 2const app = express(); 3const http = require("http").createServer(app); 4const PORT = process.env.PORT || 3001; 5 6app.set("view engine", "pug"); 7app.use(express.static(`${__dirname}/public`)); 8 9app.get("/", (req, res) => { 10 res.render("index_gest"); 11}); 12app.get("/index_gest", (req, res) => { 13 res.render("index_gest"); 14}); 15app.get("/index_user", (req, res) => { 16 res.render("index_user"); 17}); 18app.get("/login", (req, res) => { 19 res.render("login"); 20}); 21app.get("/useradd", (req, res) => { 22 res.render("useradd"); 23}); 24app.get("/useraddcomp", (req, res) => { 25 res.render("useraddcomp"); 26}); 27app.get("/pieceprogramsettings1", (req, res) => { 28 res.render("pieceprogramsettings1"); 29}); 30app.get("/pieceprogramsettings2", (req, res) => { 31 res.render("pieceprogramsettings2"); 32}); 33app.get("/pieceprogramsettings3", (req, res) => { 34 res.render("pieceprogramsettings3"); 35}); 36app.get("/pieceprogramsettings4", (req, res) => { 37 res.render("pieceprogramsettings4"); 38}); 39app.get("/pieceprogramsettings5", (req, res) => { 40 res.render("pieceprogramsettings5"); 41}); 42app.get("/gamemodeselection", (req, res) => { 43 res.render("gamemodeselection"); 44}); 45app.get("/chengeaccountinformation", (req, res) => { 46 res.render("chengeaccountinformation"); 47}); 48app.get("/mypage", (req, res) => { 49 res.render("mypage"); 50}); 51app.get("/keep", (req, res) => { 52 res.render("keep"); 53}); 54app.get("/call", (req, res) => { 55 res.render("call"); 56}); 57app.get("/play", (req, res) => { 58 res.render("play"); 59}); 60app.get("/play1", (req, res) => { 61 res.render("play1"); 62}); 63app.get("/play2", (req, res) => { 64 res.render("play2"); 65}); 66app.get("/play_inaba", (req, res) => { 67 res.render("play_inaba"); 68}); 69app.get("/callcheck", (req, res) => { 70 res.render("callcheck"); 71}); 72app.get("/keepcheck", (req, res) => { 73 res.render("keepcheck"); 74}); 75app.get("/pieceprogramedits1", (req, res) => { 76 res.render("pieceprogramedits1"); 77}); 78app.get("/pieceprogramedits2", (req, res) => { 79 res.render("pieceprogramedits2"); 80}); 81app.get("/pieceprogramedits3", (req, res) => { 82 res.render("pieceprogramedits3"); 83}); 84app.get("/pieceprogramedits4", (req, res) => { 85 res.render("pieceprogramedits4"); 86}); 87app.get("/pieceprogramedits5", (req, res) => { 88 res.render("pieceprogramedits5"); 89}); 90app.get("/resalt", (req, res) => { 91 res.render("resalt"); 92}); 93app.get("/matching", (req, res) => { 94 res.render("matching"); 95}); 96app.get("/waitingformatching _moveplay", (req, res) => { 97 res.render("waitingformatching _moveplay"); 98}); 99app.get("/waitingformatching _room", (req, res) => { 100 res.render("waitingformatching _room"); 101}); 102app.get("/waitingformatching", (req, res) => { 103 res.render("waitingformatching"); 104}); 105 106http.listen(PORT, ()=>{ 107 console.log("server listening. Port:" + PORT); 108}); 109
補足情報(FW/ツールのバージョンなど)
参考にさせていただいたサイトです。
https://kazzstorage.com/websocket-reversi-dev/
https://atmarkit.itmedia.co.jp/ait/articles/1603/14/news015.html
https://blog.katsubemakito.net/nodejs/socketio/realtime-chat1
https://socket.io/docs/v4/rooms/#default-room
回答1件
あなたの回答
tips
プレビュー