j'ai écrit ceci à côté serveur:engine.io/engine.io-client: commutation de transport ne se produit pas
var engine = require('engine.io'),
server = engine.listen(49157, {
transports: [ 'polling', 'websocket' ]
});
J'ai écrit ce côté client:
var socket = eio('ws://my.net:49157', {
transports: [ 'websocket', 'polling' ]
});
Il ne réussit jamais à se connecter ! Juste 1 essayer alors l'erreur de rappels.
Il est supposé commuter le protocole (de 'websocket'
à 'polling'
) en cas de défaillance. Pourquoi la commutation de protocole ne se produit pas? Comment pouvons-nous faire fonctionner ce changement?
Détails:
Lorsque j'utilise la même valeur transports
tant sur serveur et le client, puis il fonctionne correctement; c'est-à-dire que la connexion est bon et rapide et est basé sur la WebSocket seulement si transports[0x0] === 'websocket'
, et la connexion est également bon et est basé sur l'interrogation seulement si transports[0x0] === 'polling'
.
Dès que la connexion échoue, aucune nouvelle tentative n'est effectuée en utilisant un autre moyen de transport.
Utilisation de engine.io 1.5.4.
est-ce encore nécessaire? – SuperUberDuper