Update static/index.html
Browse files- static/index.html +32 -11
static/index.html
CHANGED
@@ -74,10 +74,8 @@
|
|
74 |
}
|
75 |
|
76 |
function connect() {
|
77 |
-
// Adapte le protocole (ws ou wss pour le sécurisé)
|
78 |
const protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:';
|
79 |
const wsUrl = `${protocol}//${window.location.host}/ws`;
|
80 |
-
|
81 |
ws = new WebSocket(wsUrl);
|
82 |
|
83 |
ws.onopen = function() {
|
@@ -87,20 +85,44 @@
|
|
87 |
};
|
88 |
|
89 |
ws.onmessage = function(event) {
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
97 |
};
|
98 |
|
99 |
ws.onclose = function() {
|
100 |
statusDiv.textContent = 'Déconnecté';
|
101 |
statusDiv.className = 'disconnected';
|
102 |
addLog('Connexion WebSocket fermée. Tentative de reconnexion dans 3 secondes...');
|
103 |
-
// Tente de se reconnecter après 3 secondes
|
104 |
setTimeout(connect, 3000);
|
105 |
};
|
106 |
|
@@ -111,7 +133,6 @@
|
|
111 |
};
|
112 |
}
|
113 |
|
114 |
-
// Lance la connexion au chargement de la page
|
115 |
connect();
|
116 |
</script>
|
117 |
|
|
|
74 |
}
|
75 |
|
76 |
function connect() {
|
|
|
77 |
const protocol = window.location.protocol === 'https:' ? 'wss:' : 'ws:';
|
78 |
const wsUrl = `${protocol}//${window.location.host}/ws`;
|
|
|
79 |
ws = new WebSocket(wsUrl);
|
80 |
|
81 |
ws.onopen = function() {
|
|
|
85 |
};
|
86 |
|
87 |
ws.onmessage = function(event) {
|
88 |
+
try {
|
89 |
+
const message = JSON.parse(event.data);
|
90 |
+
addLog(`Action reçue du serveur : "${message.action}" avec la donnée : "${message.data}"`);
|
91 |
+
|
92 |
+
let responsePayload;
|
93 |
+
|
94 |
+
// Décide quoi faire en fonction de l'action demandée
|
95 |
+
switch (message.action) {
|
96 |
+
case "get_sentence":
|
97 |
+
responsePayload = "Ceci est la phrase de réponse du client JavaScript.";
|
98 |
+
break;
|
99 |
+
case "reverse_string":
|
100 |
+
responsePayload = (message.data || "").split('').reverse().join('');
|
101 |
+
break;
|
102 |
+
default:
|
103 |
+
responsePayload = "Action inconnue.";
|
104 |
+
break;
|
105 |
+
}
|
106 |
+
|
107 |
+
// Construit la réponse JSON incluant l'ID de la requête
|
108 |
+
const response = {
|
109 |
+
request_id: message.request_id,
|
110 |
+
response: responsePayload
|
111 |
+
};
|
112 |
+
|
113 |
+
addLog(`Envoi de la réponse : "${response.response}"`);
|
114 |
+
ws.send(JSON.stringify(response));
|
115 |
+
|
116 |
+
} catch (error) {
|
117 |
+
addLog("Erreur: Impossible de traiter le message du serveur.");
|
118 |
+
console.error("Erreur de parsing JSON:", error);
|
119 |
+
}
|
120 |
};
|
121 |
|
122 |
ws.onclose = function() {
|
123 |
statusDiv.textContent = 'Déconnecté';
|
124 |
statusDiv.className = 'disconnected';
|
125 |
addLog('Connexion WebSocket fermée. Tentative de reconnexion dans 3 secondes...');
|
|
|
126 |
setTimeout(connect, 3000);
|
127 |
};
|
128 |
|
|
|
133 |
};
|
134 |
}
|
135 |
|
|
|
136 |
connect();
|
137 |
</script>
|
138 |
|