WebSocket: comment se reconnecter automatiquement après sa mort

var ws = new WebSocket('ws://localhost:8080');
ws.onopen = function () {
  ws.send(JSON.stringify({
      .... some message the I must send when I connect ....
  }));

};

ws.onmessage = function (e) {
  console.log('Got a message')
  console.log(e.data);
};

ws.onclose = function(e) {  
  console.log('socket closed try again'); 

}

ws.onerror = function(err) {
  console.error(err)
};

Quand j'ai d'abord vous connecter à la prise, je dois d'abord envoyer un message au serveur pour authentifier moi-même et de s'abonner à des chaînes.

Le problème que j'ai est que, parfois, le serveur socket n'est pas fiable et qui déclenche le onerror et onclose événements de la 'ws' objet.

Question: qu'est Ce qu'un bon modèle de conception qui me permettrait, à chaque fois que la prise ferme ou rencontre une erreur, attendez 10 secondes et rebranchez-le à la socket serveur (et de renvoyer le message initial pour le serveur)

source d'informationauteur samol