2016-04-01 19 views
1

Ich folge einem Tutorial für ein einfaches Multiplayer-Spiel mit Knoten js und socket.io (http://rawkes.com/articles/creating-a-real-time-multiplayer-game-with-websockets-and-node.html). Ich habe ein Problem, wenn ich versuche, eine Verbindung mit dem Socket-Server herzustellen.Ich erhalte eine Fehlermeldung TypeError: io.connect ist keine Funktion PS: Ich bin ein Anfänger insgesamt in Knoten js und socket.io also bitte helfen Sie mir aus.TypeError: io.connect ist keine Funktion

var util = require("util"); 
io = require("socket.io"), 
    Player = require("./Player").Player; 
var socket, players; 
function init(){ 
    players = []; 

    socket = io.listen(8000); 

    socket.configure(function() { 
     socket.set("transports", ["websocket"]); 
     socket.set("log level", 2); 
    }); 

    setEventHandlers(); 

    socket = io.connect("http://localhost", {port: 8000, transports: ["websocket"]}); 

}; 
+0

haben Sie 'init' Funktion in Ihrem js-Datei bezeichnet. – Nivesh

Antwort

1

Hinweis:socket = io.connect("http://localhost", {port: 8000, transports: ["websocket"]}); dies hat in der Client-Seite JavaScript-Datei aufgenommen werden, wo Sie socket.io.js über Script-Tag laden.

Änderung dieser:

var util = require("util"), 
    io = require("socket.io")({ 
     transports : [ 'websocket' ] 
    }), 
    Player = require("./Player").Player, 
    socket, 
    players; 

function init(){ 
    players = []; 

    socket = io.listen(8000); 

    setEventHandlers(); 

}; 
init(); 

Hinweis Im Folgenden wird nicht von Socket.io v1.0 Sie v0.9 installieren unterstützt, wenn Sie es auf diese Weise, Gebrauch machen wollen: $ npm install [email protected] -S

socket.configure(function() { 
    socket.set("transports", ["websocket"]); 
    socket.set("log level", 2); 
}); 

Looging socket.io v1.0 log-level Option entfernt wird. Zur Protokollierung muss also das Programm mit dem Debug-Modul gestartet werden.

  1. installieren debug: npm install debug -S
  2. dann das Programm aus: DEBUG=* node entry_file.js
+0

Danke für Ihre Antwort! –