Попытка удаленно подключиться к серверу socket.io через порты - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь сделать многопользовательскую браузерную игру, чтобы поиграть с друзьями удаленно. Я пытаюсь настроить сервер (используя socket.io и node.js), чтобы они могли присоединиться. Я следил за различными руководствами, и я настроил переадресацию портов (насколько мог.) Он работает в локальной сети, но не удаленно, и согласно https://www.yougetsignal.com/tools/open-ports/ порт 5000 не открыт , это порт, на котором я размещаю игру.

Вот код моего сервера:

// Dependencies
var express = require('express');
var http = require('http');
var path = require('path');
var socketIO = require('socket.io');
var app = express();
var server = http.Server(app);
var io = socketIO(server);
app.set('port', 5000);
app.use('/static', express.static(__dirname + '/static'));
// Routing
app.get('/', function(request, response) {
  response.sendFile(path.join(__dirname, 'index.html'));
});
// Starts the server.
server.listen(5000,'0.0.0.0', function() {
  console.log('Starting server on port 5000');
});


// Add the WebSocket handlers
io.on('connection', function(socket) {
});


var players = {};
io.on('connection', function(socket) {
  socket.on('new player', function() {
    players[socket.id] = {
      x: 300,
      y: 300
    };
  });
  socket.on('movement', function(data) {
    var player = players[socket.id] || {};
    if (data.left) {
      player.x -= 5;
    }
    if (data.up) {
      player.y -= 5;
    }
    if (data.right) {
      player.x += 5;
    }
    if (data.down) {
      player.y += 5;
    }
  });
});
setInterval(function() {
  io.sockets.emit('state', players);
}, 1000 / 60);

Я просто хочу, чтобы они могли присоединиться! Я новичок в сетевых вещах, но заранее благодарю за любую помощь :)

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