2012-10-20 15 views

Antwort

8

Socket.IO funktioniert am besten mit Websockets. Vor 2012 unterstützten die meisten Browser keine Websockets (source).

Bei solchen Browsern greift socket.io auf verschiedene Abfragemethoden zurück, die jedoch zu Problemen führen können, z. B. niedrige Datenrate und verzögerte Ereignisse (1-2 Minuten zu spät). Um dies zu beheben, sollten Sie versuchen, Flash-Sockets zu aktivieren.

io.set('transports', [ 
    'websocket' 
    , 'flashsocket' 
    , 'htmlfile' 
    , 'xhr-polling' 
    , 'jsonp-polling' 
]); 

Stellen Sie außerdem sicher, dass der Flash-Richtlinienport (Standard 10843) vom Client aus erreichbar ist.

+0

'htmlfile' ist ein ActiveX-Weg für IE – InspiredJW

+3

Wenn ich dies versuche, hat das 'io'-Objekt keine'' set''-Methode. Dies ist Client-Seite, nach der Aufnahme von 'socket.io.js' – Khior

+0

Dank für Martin, löste mein Problem mit IE9 verursacht einen Lesefehler ECONNRESET beim Klicken auf Aktualisieren. Jetzt löst es die Verbindung korrekt aus und tötet sofort meinen Benutzer. Khior - Ich habe dies in meiner Server-Side-Datei, direkt nach der Anforderung von socket.io –