Как правильно загрузить файлы в Node.js - PullRequest
0 голосов
/ 08 апреля 2020

Я пытаюсь создать сервер для своей игры. Файлы не загружаются и не работают должным образом, когда я запускаю его через localhost:2000, но когда я запускаю его через localhost:2000/client/index.html, все файлы CSS и JS, кажется, работают. Как я могу сделать так, чтобы он работал, когда я запускаю его через localhost:2000?

Вот моя иерархия папок:

app.js
--client--
  index.html
  --js--
    mainGame.js
    (a bunch of other JS files)
  --css--
    gameStyle.css
    militaryUnitStyle.css
  --(all my other folders)--
--node_modules--
  (all my node libraries)
--server--
  (nothing in it)

Чтобы было ясно, я бы хотел, чтобы он запускался /client/index.html при запуске через localhost:2000

Это код сервера в app.js

var express = require('express')
var app = express()
var serv = require('http').Server(app)
var port = 2000
var serverMSG = '[server] '

let serverInfo = {
    currentPlayers: 0,
    maxPlayers: 4,
    serverMax: 128,
}
let player = {
    civ: {
        england: false,
        france: false,
        spain: false,
        dutch: false,
    },
    states: {
        lobby: true,
        civSelect: false,
        game: {
            general: false,
            victory: false,
            defeat: false,
        },
    },
}

app.get('/', function(req, res) {

    res.sendFile(__dirname + '/client/index.html')
})
app.use('/client', express.static(__dirname + '/client'))

serv.listen(port)
console.clear()
console.log('Colonial Warfare server => initialized!')
console.log('CWserver HostPort: ' + port)


var io = require('socket.io') (serv,{})
io.sockets.on('connection', function(socket) {
    if(serverInfo.currentPlayers < serverInfo.maxPlayers) {
    console.log(serverMSG + 'Socket connection')
    serverInfo.currentPlayers++
    console.log(serverMSG + 'Current players on server => ' + serverInfo.currentPlayers)
    }
    if(serverInfo.currentPlayers == serverInfo.maxPlayers) {
        console.log(serverMSG + 'Game ready to begin!')
    }
    // if(serverInfo.currentPlayers > serverInfo.maxPlayers) {
    //     console.log('Max players reached! Wait for someone to disconnect or wait for match to be over to connect.')
    // }

    if(serverInfo.currentPlayers == 0) {
        console.log(serverMSG + 'Server Empty')
    }
    socket.on('disconnect', (reason) => {
        console.log(serverMSG + 'Client disconnected')
        serverInfo.currentPlayers--
        console.log(serverMSG + 'Current players on server => ' + serverInfo.currentPlayers)
      });
})  

Имейте в виду, я также новичок в Node.js

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...