Bonjour,
Je suis en train de créer une application reposant sur un websocket pour échanger des messages en temps réel avec un serveur nodeJS.
Concrètement le fonctionnement est très simple, je ne fais qu'une chose, recevoir des messages en écoute et afficher le résultat.
Pour cela, j'ai suivi un tuto et ça fonctionne très bien, seulement il faut aussi que j'implémente encore quelques trucs (notamment se reconnecter en cas de perte du serveur) et là je suis perdu parce que :
Je ne parviens pas à comprendre concrètement ce bout de code et sa syntaxe. Enfin si, je sais que ça ouvre une connexion et qu'il y a un observable qui transmet les données mais après, le qu'est-ce qui fait quoi, comment, où, combien, je suis perdu.
J'ai parcouru pas mal de tutos mais j'ai l'impression qu'ils ont tous une manière différente de faire les choses (merci JavaScript) et ça devient limite encore moins clair dans ma tête.
Y aurait-t-il une âme charitable pour m'expliquer point par point ce qu'il se passe dans le code suivant ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 this.ws = new WebSocket('ws://localhost:9876'); const observable = Rx.Observable.create((obs: Rx.Observer<MessageEvent>) => { this.ws.onmessage = obs.next.bind(obs); this.ws.onerror = obs.error.bind(obs); this.ws.onclose = obs.complete.bind(obs); return this.ws.close.bind(this.ws); }); const observer = { next: (data: Object) => { if (this.ws.readyState === WebSocket.OPEN) { this.ws.send(JSON.stringify(data)); } } }; const socket = Rx.Subject.create(observer, observable); return socket;
Partager