400个坏请求(用node和socket.io制作游戏)

时间:2017-06-07 04:09:07

标签: javascript node.js websocket socket.io

制作游戏,我不知道我在做什么涉及到在线方面。

我正在使用node.js将我的计算机用作服务器主机和客户端(localhost:3000)

var express = require('express'); //no idea what I am doing here
var app = express();
var server = app.listen(3000);
var socket = require("socket.io");
var io = socket(server);
io.sockets.on('connection', newConnection);
app.use(express.static("public"));

console.log("server is up"); //tells me that the server is ready

function newConnection(socket) {
    console.log("new player!", socket.id); //tells me when a new player connects.
}

也在主公共javascript文件中包含此代码

var socket;
socket = io.connect("localhost:3000");

每当一个新玩家连接时,我会得到400个错误的请求错误,并且该游戏认为有多个玩家已加入。

picture to aid

所以请帮助。

2 个答案:

答案 0 :(得分:1)

您需要处理当有人连接到您的服务器时会发生什么。

var express = require('express');
var app = express();
var server = require("http").createServer(app);
server.listen(3000)  //server listens on port 3000
var io = require("socket.io")(server)

//this will be called when a new client connects
io.on("connection", (socket)=>{
   //socket is the socket object of the new client
   console.log("new socket connected with socket id = " + socket.id)

})

请查看socket.io文档以获取更多信息。

答案 1 :(得分:0)

在我的游戏中,我有一个名为" Number"的构造函数。这就是问题的全部。

我假设socket.io或node.js已经有一个名为" Number"的函数。这就是造成这个问题的原因。