Socket.io-client: Node js - Socket.io-Client stellt keine Verbindung zum Socket.io-Server her

Erstellt am 17. März 2015  ·  7Kommentare  ·  Quelle: socketio/socket.io-client

Ich versuche, mit dem folgenden Code eine Verbindung zu einem socket.io-Client herzustellen:

Server:

// Anforderungen laden
var http = require('http'),
io = require('socket.io');

// Server und Socket erstellen
var server = http.createServer(function(req, res){

// Send HTML headers and message
res.writeHead(404, {'Content-Type': 'text/html'});
res.end('<h1>Aw, snap! 404</h1>');

});
server.listen (8080);
io = io.listen(server);

// Fügen Sie einen Verbindungslistener hinzu
io.sockets.on('Verbindung', Funktion(Socket) {

console.log('Client connected.');

// Disconnect listener
socket.on('disconnect', function() {
    console.log('Client disconnected.');
});

});

Klient:

console.log('1');

// Verbinden zum Server
var io = require('socket.io-client')
var socket = io.connect('localhost:8080', {reconnect: true});

console.log('2');

// Fügen Sie einen Verbindungslistener hinzu
socket.on('connect', function(socket) {
console.log('Verbunden!');
});

console.log('3');

Ich erhalte kein Connected-Konsolenprotokoll oder Client-Connected-Konsolenprotokoll und ich weiß nicht warum! Das Codebeispiel stammt aus einer anderen Frage, die gepostet wurde: Link und ich sehe keine Lösung für das Problem ...

http://stackoverflow.com/questions/29108594/node-js-socket-io-client-is-not-connecting-to-socket-io-server

Hilfreichster Kommentar

Ich habe von localhost auf 127.0.0.1 gewechselt und es hat funktioniert.

Alle 7 Kommentare

// Verbinden zum Server
var io = require('socket.io-client')
var socket = io.connect('localhost:8080', {reconnect: true});

Verwenden Sie so

// Verbinden zum Server
var io = require('socket.io-client')
var socket = io.connect('http://localhost:8080', {reconnect: true});

Ich habe das gleiche Problem. Nach dem Hinzufügen der folgenden Zeilen wurde auch das Verbindungsproblem nicht gelöst.

var io = require('socket.io-client')
var socket = io.connect('http://localhost:8080', {reconnect: true});

Gleicher Fehler. Funktioniert bei mir auch...

Ich habe das gleiche Problem, hat nicht funktioniert

Ich habe von localhost auf 127.0.0.1 gewechselt und es hat funktioniert.

Ich habe von localhost auf 127.0.0.1 gewechselt und es hat funktioniert.

Bei mir hat es nicht funktioniert.

Für zukünftige Leser müssen Sie das Protokoll explizit angeben (da der Node.js-Prozess kein window.location -Objekt hat, aus dem er das Protokoll ableiten könnte, was hier im Browser geschieht).

// does not work
io.connect("localhost:8080");
// does work
io.connect("http://localhost:8080");

Davon abgesehen denke ich, dass der Client einen Fehler ausgeben sollte, anstatt stillschweigend zu scheitern.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen