Diese Frage betrifft socket.io Versionen < 0.9.x. Neuere Versionen haben verschiedene Transporte und Methoden zum Einstellen von Transporten.node.js und socket.io. Transporttyp Konfiguration für Websocket?
Ich Test Knoten js und socket.io in zwei Wochen. als ich anfing, bekomme ich das Problem von socket.send(message)
Funktion im Client. Ich kann keine Nachricht an den Server senden. Aber ich kann immer noch Nachrichten vom Server empfangen. Ich löste dieses Problem, als ich den Transport der Server-Seite konfigurierte:
Alles gut. Jetzt kann ich auch Nachrichten an den Server senden. Aber ich habe immer noch eine Frage, warum ich den Transport konfigurieren muss. Standard socket.io Verwendung websocket Transport wie diese Einstellung:
socket.set('transports', [
'websocket'
, 'flashsocket'
, 'htmlfile'
, 'xhr-polling'
, 'jsonp-polling'
]);
so verwendet es websocket zunächst nicht XHR-Polling. Der Server kann jedoch keine vom Client gesendeten Nachrichten empfangen, wenn socket.send(msg)
und sogar socket.emit(...)
verwendet werden.
Also das Problem ist: Was unterstützt Websocket hier nicht? Browser oder node.js ... Es tut mir leid, aber ich habe so viele Seiten von Google gesucht und ich habe keine Antwort dafür gefunden.
Ich benutze node.js Version 0.8.16, Socket.io Version 0.9.13 und neueste Browser: Chrome, Firefox, Opera
Ich möchte websocket nicht XHR-Abfrage verwenden.